diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po
index 763fb93aad..eb82a6bd7c 100644
--- a/InvenTree/locale/cs/LC_MESSAGES/django.po
+++ b/InvenTree/locale/cs/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
@@ -40,10 +40,10 @@ msgstr "Zadejte datum"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr "Vyberte soubor k přiložení"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Odkaz"
@@ -235,8 +235,8 @@ msgstr "Komentář k souboru"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Neplatný výběr"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Neplatný výběr"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Název"
@@ -297,19 +297,20 @@ msgstr "Název"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Popis"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "nadřazený"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Cesta"
@@ -335,7 +336,7 @@ msgstr "Chyba serveru"
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Musí být platné číslo"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Vráceno"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Odesláno"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po
index e978214c03..c7951c5d42 100644
--- a/InvenTree/locale/de/LC_MESSAGES/django.po
+++ b/InvenTree/locale/de/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -40,10 +40,10 @@ msgstr "Datum eingeben"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Notizen"
@@ -211,11 +211,11 @@ msgstr "Datei zum Anhängen auswählen"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Link"
@@ -235,8 +235,8 @@ msgstr "Datei-Kommentar"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Ungültige Auswahl"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Ungültige Auswahl"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Name"
@@ -297,19 +297,20 @@ msgstr "Name"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Beschreibung"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "Eltern"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Pfad"
@@ -335,7 +336,7 @@ msgstr "Serverfehler"
msgid "An error has been logged by the server."
msgstr "Ein Fehler wurde vom Server protokolliert."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Muss eine gültige Nummer sein"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Zurückgegeben"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Versendet"
@@ -728,7 +729,7 @@ msgstr "Ungültige Wahl für übergeordneten Bauauftrag"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Bauauftrag"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Bauauftragsreferenz"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referenz"
@@ -762,7 +763,7 @@ msgstr "Referenz"
msgid "Brief description of the build"
msgstr "Kurze Beschreibung des Baus"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Eltern-Bauauftrag"
@@ -771,13 +772,13 @@ msgstr "Eltern-Bauauftrag"
msgid "BuildOrder to which this build is allocated"
msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Quell-Lagerort"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Bau-Statuscode"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Losnummer"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Losnummer für dieses Endprodukt"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Erstelldatum"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Zieldatum für Bauauftrag-Fertigstellung."
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Fertigstellungsdatum"
@@ -892,7 +893,7 @@ msgstr "Fertigstellungsdatum"
msgid "completed by"
msgstr "Fertiggestellt von"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Aufgegeben von"
@@ -900,12 +901,12 @@ msgstr "Aufgegeben von"
msgid "User who issued this build order"
msgstr "Nutzer der diesen Bauauftrag erstellt hat"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Verantwortlicher Benutzer"
@@ -972,7 +973,7 @@ 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:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Bauauftrag"
@@ -986,11 +987,11 @@ msgstr "Bauauftrag starten um Teile zuzuweisen"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Quell-Lagerartikel"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Quell-Lagerartikel"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Ziel-Lagerartikel"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr "Endprodukt"
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält"
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Seriennummer"
@@ -1120,10 +1121,10 @@ msgstr "Eine Liste von Endprodukten muss angegeben werden"
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Lagerort"
msgid "Location for completed build outputs"
msgstr "Lagerort für fertige Endprodukte"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Status"
@@ -1196,7 +1197,7 @@ msgstr "Nicht zugewiesene akzeptieren"
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:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen"
@@ -1208,7 +1209,7 @@ msgstr "Unvollständig Zuweisung akzeptieren"
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:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
@@ -1216,8 +1217,8 @@ msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
msgid "Build order has incomplete outputs"
msgstr "Bauauftrag hat unvollständige Aufbauten"
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Stücklisten-Position"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Bauauftrag abbrechen"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Bauauftrag löschen"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Bauauftrag fertigstellen"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Baubeschreibung"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
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:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr "Dieser Bauauftrag ist dem Auftrag %(link)s zugeordnet"
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr "Dieser Bauauftrag ist dem Bauauftrag %(link)s untergeordnet"
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr "Bauauftrag ist bereit abgeschlossen zu werden"
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
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:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
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:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Zieldatum"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr "Bauauftrag war fällig am %(target)s"
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr "Bauauftrag war fällig am %(target)s"
msgid "Overdue"
msgstr "Überfällig"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Fertig"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Fertig"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Auftrag"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Aufgegeben von"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Bauauftrag löschen"
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Ziel-Lager"
@@ -1447,7 +1452,7 @@ msgstr "Zugewiesene Teile"
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Losnummer"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Erstellt"
@@ -1479,7 +1484,7 @@ msgstr "Unter-Bauaufträge"
msgid "Allocate Stock to Build"
msgstr "Bestand Bauauftrag zuweisen"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Bestandszuordnung aufheben"
@@ -1510,7 +1515,7 @@ msgstr "Benötigte Teile bestellen"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Teile bestellen"
@@ -1582,7 +1587,7 @@ msgstr "Fertiggestellte Endprodukte"
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr "Zuordnung abgeschlossen"
msgid "All untracked stock items have been allocated"
msgstr "Alle nicht verfolgten Lagerartikel wurden zugewiesen"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Neuer Bauauftrag"
@@ -1845,7 +1850,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Vorlage"
msgid "Parts are templates by default"
msgstr "Teile sind standardmäßig Vorlagen"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr "Preisstaffelungs Anzahl"
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Preis"
@@ -2830,7 +2835,7 @@ msgstr "Standard-Währung für diese Firma"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Basisteil"
@@ -2859,7 +2864,7 @@ msgstr "Hersteller auswählen"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr "MPN"
@@ -2899,7 +2904,7 @@ msgstr "Wert"
msgid "Parameter value"
msgstr "Parameterwert"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren"
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Zulieferer auswählen"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr "SKU (Lagerbestandseinheit)"
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr "Zuliefererbeschreibung des Teils"
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Notiz"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "Basiskosten"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Mindestpreis"
@@ -2979,7 +2984,7 @@ msgstr "Verpackungen"
msgid "Part packaging"
msgstr "Teile-Verpackungen"
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "Vielfache"
@@ -2990,8 +2995,8 @@ msgstr "Mehrere bestellen"
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "Firma"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Bestellung anlegen"
@@ -3069,7 +3074,7 @@ msgstr "Bild von URL herunterladen"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Neues Zuliefererteil anlegen"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Neues Zuliefererteil"
@@ -3134,7 +3139,7 @@ msgstr "Herstellerteile"
msgid "Create new manufacturer part"
msgstr "Neues Herstellerteil anlegen"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Neues Herstellerteil"
@@ -3148,7 +3153,7 @@ msgstr "Zulieferer-Bestand"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Neue Bestellung"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Neuer Auftrag"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr "Zugeordneter Bestand"
@@ -3206,7 +3211,7 @@ msgstr "Hersteller"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Teil bestellen"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Zulieferer"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Löschen"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parameter"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "Parameter löschen"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Parameter hinzufügen"
@@ -3291,7 +3296,7 @@ msgstr "Zugewiesene Lagerartikel"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Zuliefererteil"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Teil bestellen"
@@ -3358,7 +3363,7 @@ msgstr "Preisinformationen ansehen"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr "Preisstaffel hinzufügen"
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr "Keine Informationen zur Preisstaffel gefunden"
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr "Preisstaffel löschen"
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr "Preisstaffel bearbeiten"
@@ -3398,10 +3403,9 @@ msgstr "Teilverfügbarkeit aktualisieren"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Bestand"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr "Firma bei der die Teile bestellt werden"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr "Zulieferer-Referenz"
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr "Zieldatum für Auftrags-Fertigstellung."
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr "Versanddatum"
@@ -3673,7 +3677,7 @@ msgstr "gelöscht"
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr "Bestellung"
@@ -3683,7 +3687,7 @@ msgstr "Bestellung"
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr "Zuliefererteil"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr "Position stimmt nicht mit Kaufauftrag überein"
msgid "Select destination location for received items"
msgstr "Zielort für empfangene Teile auswählen"
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr "Losnummer für eingehende Lagerartikel"
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr "Seriennummern für eingehende Lagerartikel"
@@ -4061,10 +4065,6 @@ msgstr "Gesamtsumme"
msgid "Total cost could not be calculated"
msgstr "Gesamtkosten konnten nicht berechnet werden"
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Bestellung bearbeiten"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Zulieferer-Teil auswählen"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr "Bestellungs-Positionen"
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr "Position hinzufügen"
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr "Paketliste drucken"
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr "Abgeschlossene Sendungen"
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Dieser Auftrag ist nicht vollständig zugeordnet"
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr "Kundenreferenz"
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr "Ausstehende Sendungen"
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "Aktionen"
@@ -4257,35 +4257,35 @@ msgstr "Ausgehender Auftrag"
msgid "Stock produced by Build Order"
msgstr "Lagerartikel produziert von Bauauftrag"
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr "Lagerartikel für Bauauftrag benötigt"
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr "Gültig"
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr "Gesamte Stückliste validieren"
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr "Diese Option muss ausgewählt werden"
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr "Muss größer als 0 sein"
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr "Muss eine gültige Nummer sein"
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr "Standort für anfänglichen Bestand angeben"
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr "Dieses Feld ist erforderlich"
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr "Gesamtbestand"
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Verfügbarer Bestand"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "Bestellt"
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Teil-Kategorie"
@@ -4352,7 +4352,7 @@ msgstr "Teil-Kategorien"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Teile"
@@ -4382,7 +4382,7 @@ msgstr "Die neuste Seriennummer ist"
msgid "Duplicate IPN not allowed in part settings"
msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Name des Teils"
@@ -4415,11 +4415,11 @@ msgstr "Schlüsselwörter"
msgid "Part keywords to improve visibility in search results"
msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern"
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Kategorie"
@@ -4530,245 +4530,245 @@ msgstr "BOM Kontrolldatum"
msgid "Creation User"
msgstr "Erstellungs-Nutzer"
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr "Mehrere verkaufen"
-#: part/models.py:2265
+#: part/models.py:2312
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:2282
+#: part/models.py:2329
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:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr "Test-Name"
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr "Namen für diesen Test eingeben"
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr "Test-Beschreibung"
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr "Beschreibung für diesen Test eingeben"
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr "Benötigt"
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr "Muss dieser Test erfolgreich sein?"
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr "Erfordert Wert"
-#: part/models.py:2321
+#: part/models.py:2368
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:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr "Anhang muss eingegeben werden"
-#: part/models.py:2327
+#: part/models.py:2374
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:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr "Ungültiges Zeichen im Vorlagename ({c})"
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr "Vorlagen-Name des Parameters muss eindeutig sein"
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr "Name des Parameters"
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr "Einheit des Parameters"
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr "Ausgangsteil"
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "Parameter Vorlage"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr "Wert"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr "Parameter Wert"
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr "Standard-Wert"
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr "Standard Parameter Wert"
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr "Teilnummer oder Teilname"
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "Teil-ID"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr "Eindeutige Teil-ID"
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr "Name des Teils"
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr "Teil-ID"
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr "IPN-Wert des Teils"
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr "Stufe"
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr "Stücklistenebene"
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr "Ausgangsteil auswählen"
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr "Untergeordnetes Teil"
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr "Teil für die Nutzung in der Stückliste auswählen"
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil"
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr "Optional"
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr "Diese Stücklisten-Position ist optional"
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Überschuss"
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr "Geschätzter Ausschuss (absolut oder prozentual)"
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr "Referenz der Postion auf der Stückliste"
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr "Notizen zur Stücklisten-Position"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr "Prüfsumme"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr "Prüfsumme der Stückliste"
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr "Geerbt"
-#: part/models.py:2627
+#: part/models.py:2674
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:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Varianten zulassen"
-#: part/models.py:2633
+#: part/models.py:2680
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:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr "Menge muss eine Ganzzahl sein"
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr "Zuliefererteil muss festgelegt sein"
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr "Stücklisten Ersatzteile"
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein"
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr "Übergeordnete Stücklisten Position"
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr "Ersatzteil"
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr "Teil 1"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr "Teil 2"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr "verknüpftes Teil auswählen"
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr "Doppelte Beziehung existiert bereits"
@@ -4876,7 +4876,7 @@ msgstr "Die Stückliste für %(part)s wurde zuletzt von %(checker)s am
msgid "The BOM for %(part)s has not been validated."
msgstr "Die Stückliste für %(part)s wurde noch nicht kontrolliert."
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr "Stücklisten-Aktionen"
@@ -4945,8 +4945,8 @@ msgstr "Neues Teil anlegen"
msgid "New Part"
msgstr "Neues Teil"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Optionen"
@@ -5014,138 +5014,146 @@ msgstr "%(full_name)s - %(desc)s (%(match_per)s%% übereinstimmend)"
msgid "Part Stock"
msgstr "Teilbestand"
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Neu laden"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr "Teil Test-Vorlagen"
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr "Test Vorlage hinzufügen"
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr "Verkaufsauftragszuweisungen"
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr "Teile-Notizen"
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr "Teil Varianten"
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr "Neue Variante anlegen"
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr "neue Variante anlegen"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr "Parameter hinzufügen"
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr "Verknüpfte Teile"
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr "Verknüpftes Teil hinzufügen"
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "Stückliste"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr "Export-Aktionen"
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr "Stückliste exportieren"
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr "Stücklisten-Bericht drucken"
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr "Stückliste hochladen"
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr "Stückliste kopieren"
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr "Stückliste überprüfen"
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr "Neue Stücklisten-Position"
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr "Stücklisten-Position hinzufügen"
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr "Baugruppen"
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr "Gefertigte Teile"
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr "Bauauftragszuweisungen"
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Zulieferer"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Teil-Hersteller"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr "Herstellerteile löschen"
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr "Stücklisten-Position anlegen"
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr "verknüpftes Teil"
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr "verknüpftes Teil hinzufügen"
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr "Testergebnis-Vorlage hinzufügen"
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr "Stückpreis Einkauf - %(currency)s"
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr "Stückpreis Differenz - %(currency)s"
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr "Stückpreis Zulieferer - %(currency)s"
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr "Stückpreis - %(currency)s"
@@ -5321,13 +5329,13 @@ msgstr "Zu Bauaufträgen zugeordnet"
msgid "Allocated to Sales Orders"
msgstr "Zur Bestellung zugeordnet"
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr "Herstellbar"
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr "Im Bau"
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr "Gesamtkosten"
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr "Keine Zulieferer-Preise verfügbar"
@@ -5414,6 +5422,18 @@ msgstr "Interner Preis"
msgid "No pricing information is available for this part."
msgstr "Keine Preise für dieses Teil verfügbar"
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr "Datum"
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr "Varianten"
@@ -5462,7 +5482,7 @@ msgstr "Verkaufspreis anzeigen"
msgid "Calculation parameters"
msgstr "Berechnungsparameter"
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr "Zuliefererkosten"
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr "Keine Verkaufsgeschichte für diesen Teil verfügbar."
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "Kein Bestand"
@@ -5893,11 +5913,11 @@ msgstr "Lagerartikel Test-Bericht"
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Seriennummer"
@@ -5915,13 +5935,6 @@ msgstr "Test"
msgid "Result"
msgstr "Ergebnis"
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr "Datum"
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr "bestanden"
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr "Verfügbare Menge"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Kein Lagerort gesetzt"
@@ -7702,7 +7715,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:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Benötigte Menge"
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr "Klicken Sie auf den folgenden Link, um diesen Teil anzuzeigen"
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr "Mindestmenge"
@@ -7917,10 +7931,10 @@ msgstr "Zeilendaten anzeigen"
msgid "Row Data"
msgstr "Zeilendaten"
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Schliessen"
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr "Vorlage einer Stückliste herunterladen"
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr "Format"
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr "Dateiformat auswählen"
@@ -7991,390 +8005,390 @@ msgstr "Zulieferer-Daten in Stückliste-Export einschließen"
msgid "Remove substitute part"
msgstr "Ersatzteil entfernen"
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
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:578
+#: templates/js/translated/bom.js:576
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:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr "Ersatzteil entfernen"
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr "Ersatzteil hinzufügen"
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr "Stücklisten Ersatzteile bearbeiten"
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr "Alle ausgewählte Stücklistenpositionen werden gelöscht"
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr "Ausgewählte Stücklistenpositionen löschen?"
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr "Stückliste für Bauteile laden"
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr "Ersatzteile verfügbar"
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr "Varianten erlaubt"
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr "Kein Lagerbestand verfügbar"
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr "Beinhaltet Variante und Ersatzbestand"
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr "Beinhaltet Variantenbestand"
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr "Enthält Ersatzbestand"
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr "Ersatzteile"
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr "Kaufpreisspanne"
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr "Durchschnittlicher Kaufpreis"
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr "Stückliste anzeigen"
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr "Stücklisten-Position kontrollieren"
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr "Diese Position wurde kontrolliert"
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr "Ersatzteile bearbeiten"
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr "Stücklisten-Position bearbeiten"
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr "Stücklisten-Position löschen"
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr "Keine Stücklisten-Position(en) gefunden"
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr "benötigtes Teil"
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr "Geerbt von übergeordneter Stückliste"
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr "Bauauftrag bearbeiten"
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr "Bauauftrag erstellen"
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr "Bauauftrag abbrechen"
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
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:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr "Lagerbestand wurde zu diesem Bauauftrag hinzugefügt"
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
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:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr "Bauauftrag ist bereit abgeschlossen zu werden"
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr "Bauauftrag ist unvollständig"
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr "Bauauftrag fertigstellen"
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr "Nächste verfügbare Seriennummer"
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr "Letzte Seriennummer"
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "Die Stückliste enthält verfolgbare Teile"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr "Endprodukte müssen individuell angelegt werden"
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "Nachverfolgbare Teile können Seriennummern haben"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr "Seriennummeren für mehrere einzelne Endprodukte angeben"
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr "Endprodukt anlegen"
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr "Lagerartikel zu diesem Endprodukt zuweisen"
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr "Bestand von Endpordukt zurücknehmen"
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr "Endprodukt fertigstellen"
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr "Endprodukt entfernen"
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
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:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr "Lagerartikel zurücknehmen"
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr "Endprodukte auswählen"
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr "Mindestens ein Endprodukt muss ausgewählt werden"
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr "Endprodukt"
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr "Endprodukte fertigstellen"
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr "Endprodukte entfernen"
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr "Keine Allokationen für Bauauftrag gefunden"
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr "Standort nicht angegeben"
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr "Keine aktiven Endprodukte gefunden"
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr "Bestand zuteilen"
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr "Keine nachverfolgten Stücklisten-Einträge für diesen Bauauftrag"
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr "Abgeschlossene Tests"
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr "Keine erforderlichen Tests für diesen Bauauftrag"
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr "Bestands-Zuordnung bearbeiten"
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr "Bestands-Zuordnung löschen"
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr "Zuordnung bearbeiten"
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr "Zuordnung entfernen"
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr "Ersatzteile verfügbar"
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr "Anzahl pro"
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr "Unzureichender Bestand verfügbar"
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr "Ausreichender Bestand verfügbar"
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr "Zugeordnet"
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr "Bestand bauen"
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr "Bestand bestellen"
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr "Bestand zuweisen"
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Teile auswählen"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr "Sie müssen mindestens ein Teil auswählen"
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr "Anzahl für Bestandszuordnung eingeben"
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr "Alle Teile zugeordnet"
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr "Alle ausgewählten Teile wurden vollständig zugeordnet"
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
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:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr "Lagerartikel für Bauauftrag zuweisen"
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr "Keine passenden Lagerstandorte"
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr "Keine passenden Lagerbestände"
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr "Automatische Lagerzuordnung"
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
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:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr "Wenn ein Standort angegeben ist, wird der Lagerbestand nur von diesem Ort zugewiesen"
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
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:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr "Lagerartikel zuordnen"
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr "Keine Bauaufträge passen zur Anfrage"
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr "Auswählen"
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr "Bauauftrag ist überfällig"
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr "Fortschritt"
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr "Keine Benutzerinformation"
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr "Keine Teile zugeordnet zu"
@@ -8390,11 +8404,11 @@ msgstr "Herstellerteil hinzufügen"
msgid "Edit Manufacturer Part"
msgstr "Herstellerteil ändern"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Zulieferer hinzufügen"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "Zuliefererteil hinzufügen"
@@ -8765,381 +8779,385 @@ msgstr "Keine ungelesenen Benachrichtigungen"
msgid "Notifications will load here"
msgstr "Benachrichtigungen erscheinen hier"
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr "Dieser Sendung wurden keine Artikel zugewiesen"
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr "Die folgenden Artikel werden verschickt"
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr "Sendung fertigstellen"
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr "Sendung bestätigen"
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr "Keine ausstehenden Sendungen gefunden"
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr "Keine Lagerartikel für offene Sendungen zugewiesen"
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr "Überspringen"
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr "Bestellung vervollständigen"
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr "Diese Bestellung als vollständig markieren?"
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr "Alle Einträge wurden erhalten"
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
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/order.js:299
+#: templates/js/translated/order.js:300
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/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr "Bestellung abbrechen"
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
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/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr "Diese Bestellung kann nicht storniert werden"
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr "Bestellung aufgeben"
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr "Nachdem diese Bestellung plaziert ist können die Positionen nicht länger bearbeitbar ist."
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr "Auftrag stornieren"
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
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/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr "Sendung anlegen"
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr "Kunden hinzufügen"
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr "Auftrag anlegen"
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Bestellung bearbeiten"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr "Bestellung exportieren"
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr "Mindestens ein kaufbares Teil muss ausgewählt werden"
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr "Zu bestellende Menge"
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr "Neues Zuliefererteil"
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr "Neue Bestellung"
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr "Zur Bestellung hinzufügen"
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr "Keine passenden Lieferantenteile"
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr "Keine passenden Bestellungen"
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr "Positionen auswählen"
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr "Mindestens eine Position muss ausgewählt werden"
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr "Losnummer hinzufügen"
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr "Seriennummern hinzufügen"
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr "Zu erhaltende Menge"
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr "Status"
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Bestellnummer"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Bestellt"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr "Zu erhaltende Menge"
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr "Empfang der Teile bestätigen"
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr "Bestellpositionen erhalten"
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr "Keine Bestellungen gefunden"
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr "Bestellung überfällig"
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr "Positionen"
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr "Position duplizieren"
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr "Position bearbeiten"
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr "Position löschen"
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr "Keine Positionen gefunden"
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr "Summe"
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "Stück-Preis"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Gesamtpreis"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr "Diese Position ist überfällig"
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr "Position empfangen"
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr "Position duplizieren"
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr "Position bearbeiten"
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr "Position löschen"
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr "Position duplizieren"
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr "Zeile bearbeiten"
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr "Zeile löschen"
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr "Position duplizieren"
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr "Zeile bearbeiten"
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr "Zeile löschen"
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr "Keine passenden Positionen gefunden"
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr "Keine Aufträge gefunden"
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr "Ungültiger Kunde"
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr "Sendung bearbeiten"
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr "Sendung fertigstellen"
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr "Sendung löschen"
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr "Sendung bearbeiten"
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr "Sendung löschen"
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr "Keine passenden Sendungen gefunden"
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr "Sendungsreferenz"
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr "Nicht versandt"
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr "Nachverfolgen"
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr "Rechnung"
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr "Sendung hinzufügen"
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Bestandszuordnung bestätigen"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr "Artikel zu Kundenauftrag zuweisen"
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr "Keine Allokationen für Verkaufsaufträge gefunden"
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr "Bestandszuordnung bearbeiten"
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "Löschvorgang bestätigen"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr "Bestands-Zuordnung löschen"
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr "an Kunde versand"
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr "Lagerstandort nicht angegeben"
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr "Seriennummern zuweisen"
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Bestand kaufen"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Preis berechnen"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr "Kann nicht gelöscht werden, da Artikel versandt wurden"
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr "Kann nicht gelöscht werden, da Artikel zugewiesen sind"
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr "Seriennummern zuweisen"
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr "Stückpreis aktualisieren"
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr "Keine passenden Positionen gefunden"
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr "Keine passenden Positionen gefunden"
@@ -9319,12 +9337,12 @@ msgstr "überprüfte Stückliste"
msgid "Copy Bill of Materials"
msgstr "Stückliste kopieren"
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr "Bestand niedrig"
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr "Kein Lagerbestand verfügbar"
@@ -9356,7 +9374,7 @@ msgstr "Teile-Beziehung löschen"
msgid "Delete Part Relationship"
msgstr "Teile-Beziehung löschen"
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Keine Teile gefunden"
@@ -9368,100 +9386,124 @@ msgstr "Nicht verfügbar"
msgid "No category"
msgstr "Keine Kategorie"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Listenansicht"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Rasteransicht"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "Teil-Kategorie auswählen"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr "Teil-Kategorie wählen"
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr "Kategorie erforderlich"
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Baumansicht"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr "Abonnierte Kategorie"
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr "Keine zur Anfrage passenden Testvorlagen"
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr "Testergebnis bearbeiten"
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr "Testergebnis löschen"
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr "Dieses Testergebnis ist für ein Hauptteil"
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr "Testergebnis-Vorlage bearbeiten"
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr "Testergebnis-Vorlage löschen"
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr "Keine ${human_name} Informationen gefunden"
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr "${human_name} bearbeiten"
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr "${human_name} löschen"
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
-msgstr "Aktueller Lagerbestand"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
+msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr "Keine Zeitplanung für dieses Teil vorhanden"
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr "Geplante Lagermengen"
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr "Einzelpreis"
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr "Einzelpreisdifferenz"
@@ -10222,10 +10264,6 @@ msgstr "Keine passenden Ergebnisse gefunden"
msgid "Hide/Show pagination"
msgstr "Zeige/Verstecke Pagination"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Neu laden"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr "umschalten"
diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po
index a5056498c6..1e4c029c87 100644
--- a/InvenTree/locale/el/LC_MESSAGES/django.po
+++ b/InvenTree/locale/el/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po
index 4e340ab2d7..78294bbda5 100644
--- a/InvenTree/locale/en/LC_MESSAGES/django.po
+++ b/InvenTree/locale/en/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-15 13:12+0000\n"
+"POT-Creation-Date: 2022-08-17 06:25+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -37,15 +37,15 @@ msgstr ""
#: order/templates/order/so_sidebar.html:17
#: part/templates/part/part_sidebar.html:59
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329
-#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823
-#: stock/serializers.py:922 stock/serializers.py:1054
+#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329
+#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
+#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
-#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976
+#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -200,7 +200,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:395 stock/models.py:2095
+#: InvenTree/models.py:395 stock/models.py:2102
#: templates/js/translated/attachment.js:103
#: templates/js/translated/attachment.js:241
msgid "Attachment"
@@ -212,7 +212,7 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:795
+#: part/models.py:802
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
@@ -220,8 +220,8 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:403 build/models.py:296 part/models.py:796
-#: stock/models.py:651
+#: InvenTree/models.py:403 build/models.py:296 part/models.py:803
+#: stock/models.py:658
msgid "Link to external URL"
msgstr ""
@@ -234,12 +234,12 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646
-#: common/models.py:1647 common/models.py:1870 common/models.py:1871
-#: common/models.py:2133 common/models.py:2134 part/models.py:2193
-#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239
+#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
+#: common/models.py:1666 common/models.py:1889 common/models.py:1890
+#: common/models.py:2152 common/models.py:2153 part/models.py:2200
+#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
-#: templates/js/translated/stock.js:2632
+#: templates/js/translated/stock.js:2641
msgid "User"
msgstr ""
@@ -276,19 +276,19 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856
-#: company/models.py:358 label/models.py:101 part/models.py:739
-#: part/models.py:2371 plugin/models.py:93 report/models.py:152
+#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
+#: company/models.py:358 label/models.py:101 part/models.py:746
+#: part/models.py:2378 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
-#: templates/InvenTree/settings/plugin.html:49
-#: templates/InvenTree/settings/plugin.html:132
+#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:134
#: templates/InvenTree/settings/plugin_settings.html:23
#: templates/InvenTree/settings/settings.html:347
#: templates/js/translated/company.js:545
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
-#: templates/js/translated/part.js:684 templates/js/translated/part.js:836
-#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388
+#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,21 +297,21 @@ msgstr ""
#: company/models.py:516 company/templates/company/company_base.html:71
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
-#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74
+#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
#: part/templates/part/part_base.html:167 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
-#: stock/templates/stock/location.html:103
+#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
-#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149
-#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739
-#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469
+#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
+#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -324,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -336,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2692
+#: InvenTree/serializers.py:55 part/models.py:2699
msgid "Must be a valid number"
msgstr ""
@@ -626,7 +626,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080
+#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084
msgid "Merged stock items"
msgstr ""
@@ -748,7 +748,7 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2610
+#: order/models.py:904 part/models.py:2617
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
@@ -775,10 +775,10 @@ msgstr ""
#: build/models.py:191 build/templates/build/build_base.html:77
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:336 part/models.py:2139 part/models.py:2154
-#: part/models.py:2173 part/models.py:2191 part/models.py:2290
-#: part/models.py:2410 part/models.py:2500 part/models.py:2585
-#: part/models.py:2861 part/serializers.py:811
+#: part/models.py:343 part/models.py:2146 part/models.py:2161
+#: part/models.py:2180 part/models.py:2198 part/models.py:2297
+#: part/models.py:2417 part/models.py:2507 part/models.py:2592
+#: part/models.py:2868 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -801,11 +801,11 @@ msgstr ""
#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
-#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206
-#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582
-#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954
-#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495
-#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824
+#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
+#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
+#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
+#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504
+#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833
msgid "Part"
msgstr ""
@@ -863,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:655 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1247
msgid "Batch Code"
msgstr ""
@@ -871,7 +871,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:258 order/models.py:86 part/models.py:931
+#: build/models.py:258 order/models.py:86 part/models.py:938
#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
msgid "Creation Date"
msgstr ""
@@ -904,7 +904,7 @@ msgstr ""
#: build/models.py:289 build/templates/build/build_base.html:190
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
-#: order/templates/order/sales_order_base.html:183 part/models.py:935
+#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
msgid "Responsible"
@@ -917,7 +917,7 @@ msgstr ""
#: build/models.py:295 build/templates/build/detail.html:101
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:153
-#: part/templates/part/part_base.html:346 stock/models.py:649
+#: part/templates/part/part_base.html:346 stock/models.py:656
#: stock/templates/stock/item_base.html:205
msgid "External Link"
msgstr ""
@@ -983,8 +983,8 @@ msgid "Build to allocate parts"
msgstr ""
#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015
-#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754
-#: stock/serializers.py:880 stock/templates/stock/item_base.html:10
+#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756
+#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
@@ -992,8 +992,8 @@ msgstr ""
#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
-#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748
-#: templates/js/translated/stock.js:2568
+#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
+#: templates/js/translated/stock.js:2577
msgid "Stock Item"
msgstr ""
@@ -1003,11 +1003,11 @@ msgstr ""
#: build/models.py:1358 build/serializers.py:193
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:34 common/models.py:1678
+#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2601 part/templates/part/detail.html:937
+#: part/models.py:2608 part/templates/part/detail.html:937
#: part/templates/part/detail.html:1023
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
@@ -1030,11 +1030,11 @@ msgstr ""
#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147
-#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412
-#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454
-#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778
-#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417
+#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
+#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
msgstr ""
@@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output"
msgstr ""
#: build/serializers.py:208 build/serializers.py:665 order/models.py:318
-#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542
-#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244
+#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544
+#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251
#: stock/serializers.py:302
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1092,7 +1092,7 @@ msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
#: stock/serializers.py:311 templates/js/translated/order.js:1258
-#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455
+#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1118,16 +1118,16 @@ msgstr ""
#: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532
#: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534
-#: stock/serializers.py:915 stock/serializers.py:1148
+#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
-#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584
-#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956
-#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509
+#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
+#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
+#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
msgid "Location"
msgstr ""
@@ -1140,8 +1140,8 @@ msgstr ""
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825
-#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718
+#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1217,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719
-#: part/models.py:2853
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
+#: part/models.py:2860
msgid "BOM Item"
msgstr ""
@@ -1234,7 +1234,7 @@ msgstr ""
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:651 stock/serializers.py:767
+#: build/serializers.py:651 stock/serializers.py:769
msgid "Item must be in stock"
msgstr ""
@@ -1372,7 +1372,7 @@ msgstr ""
#: report/templates/report/inventree_build_order_base.html:125
#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038
+#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
@@ -1450,8 +1450,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:170
#: templates/js/translated/build.js:1182
#: templates/js/translated/model_renderers.js:124
-#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839
-#: templates/js/translated/stock.js:2725
+#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
+#: templates/js/translated/stock.js:2734
#: templates/js/translated/table_filters.js:159
#: templates/js/translated/table_filters.js:250
msgid "Batch"
@@ -1511,7 +1511,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:177 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:977
msgid "Order Parts"
msgstr ""
@@ -1564,12 +1564,12 @@ msgid "Delete outputs"
msgstr ""
#: build/templates/build/detail.html:267
-#: stock/templates/stock/location.html:197 templates/stock_table.html:27
+#: stock/templates/stock/location.html:202 templates/stock_table.html:27
msgid "Printing Actions"
msgstr ""
#: build/templates/build/detail.html:271 build/templates/build/detail.html:272
-#: stock/templates/stock/location.html:201 templates/stock_table.html:31
+#: stock/templates/stock/location.html:206 templates/stock_table.html:31
msgid "Print labels"
msgstr ""
@@ -1846,7 +1846,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2412 report/models.py:158
+#: common/models.py:951 part/models.py:2419 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1856,7 +1856,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -1866,7 +1866,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:965 part/models.py:893
+#: common/models.py:965 part/models.py:900
#: templates/js/translated/table_filters.js:455
msgid "Component"
msgstr ""
@@ -1875,7 +1875,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:972 part/models.py:904
+#: common/models.py:972 part/models.py:911
msgid "Purchaseable"
msgstr ""
@@ -1883,7 +1883,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:979 part/models.py:909
+#: common/models.py:979 part/models.py:916
#: templates/js/translated/table_filters.js:476
msgid "Salable"
msgstr ""
@@ -1892,7 +1892,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:986 part/models.py:899
+#: common/models.py:986 part/models.py:906
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:108
#: templates/js/translated/table_filters.js:488
@@ -1903,7 +1903,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:993 part/models.py:919
+#: common/models.py:993 part/models.py:926
#: part/templates/part/part_base.html:151
#: templates/js/translated/table_filters.js:42
#: templates/js/translated/table_filters.js:492
@@ -1987,608 +1987,632 @@ msgid "Format to display the part name"
msgstr ""
#: common/models.py:1074
-msgid "Enable label printing"
+msgid "Part Category Default Icon"
msgstr ""
#: common/models.py:1075
-msgid "Enable label printing from the web interface"
+msgid "Part category default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1080
+msgid "Enable label printing"
msgstr ""
#: common/models.py:1081
+msgid "Enable label printing from the web interface"
+msgstr ""
+
+#: common/models.py:1087
msgid "Label Image DPI"
msgstr ""
-#: common/models.py:1082
+#: common/models.py:1088
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1097
msgid "Enable Reports"
msgstr ""
-#: common/models.py:1092
+#: common/models.py:1098
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:1098 templates/stats.html:25
+#: common/models.py:1104 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:1099
+#: common/models.py:1105
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:1105
+#: common/models.py:1111
msgid "Page Size"
msgstr ""
-#: common/models.py:1106
+#: common/models.py:1112
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:1116
+#: common/models.py:1122
msgid "Enable Test Reports"
msgstr ""
-#: common/models.py:1117
+#: common/models.py:1123
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:1123
+#: common/models.py:1129
msgid "Attach Test Reports"
msgstr ""
-#: common/models.py:1124
+#: common/models.py:1130
msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item"
msgstr ""
-#: common/models.py:1130
+#: common/models.py:1136
msgid "Batch Code Template"
msgstr ""
-#: common/models.py:1131
+#: common/models.py:1137
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/models.py:1136
+#: common/models.py:1142
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:1137
+#: common/models.py:1143
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:1143
+#: common/models.py:1149
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:1144
+#: common/models.py:1150
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:1150
+#: common/models.py:1156
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:1151
+#: common/models.py:1157
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1159
msgid "days"
msgstr ""
-#: common/models.py:1158
+#: common/models.py:1164
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1165
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:1165
+#: common/models.py:1171
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1172
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:1172
-msgid "Build Order Reference Pattern"
-msgstr ""
-
-#: common/models.py:1173
-msgid "Required pattern for generating Build Order reference field"
+#: common/models.py:1178
+msgid "Stock Location Default Icon"
msgstr ""
#: common/models.py:1179
+msgid "Stock location default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1184
+msgid "Build Order Reference Pattern"
+msgstr ""
+
+#: common/models.py:1185
+msgid "Required pattern for generating Build Order reference field"
+msgstr ""
+
+#: common/models.py:1191
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1192
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/models.py:1186
+#: common/models.py:1198
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1199
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/models.py:1193
+#: common/models.py:1205
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1206
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/models.py:1201
+#: common/models.py:1213
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:1202
+#: common/models.py:1214
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:1208
+#: common/models.py:1220
msgid "Enable registration"
msgstr ""
-#: common/models.py:1209
+#: common/models.py:1221
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:1215
+#: common/models.py:1227
msgid "Enable SSO"
msgstr ""
-#: common/models.py:1216
+#: common/models.py:1228
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:1222
+#: common/models.py:1234
msgid "Email required"
msgstr ""
-#: common/models.py:1223
+#: common/models.py:1235
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1229
+#: common/models.py:1241
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1230
+#: common/models.py:1242
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1236
+#: common/models.py:1248
msgid "Mail twice"
msgstr ""
-#: common/models.py:1237
+#: common/models.py:1249
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1243
+#: common/models.py:1255
msgid "Password twice"
msgstr ""
-#: common/models.py:1244
+#: common/models.py:1256
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:1250
+#: common/models.py:1262
msgid "Group on signup"
msgstr ""
-#: common/models.py:1251
+#: common/models.py:1263
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1257
+#: common/models.py:1269
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:1258
+#: common/models.py:1270
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1264
+#: common/models.py:1276
msgid "Check plugins on startup"
msgstr ""
-#: common/models.py:1265
+#: common/models.py:1277
msgid "Check that all plugins are installed on startup - enable in container enviroments"
msgstr ""
-#: common/models.py:1273
+#: common/models.py:1284
+msgid "Check plugin signatures"
+msgstr ""
+
+#: common/models.py:1285
+msgid "Check and show signatures for plugins"
+msgstr ""
+
+#: common/models.py:1292
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1274
+#: common/models.py:1293
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1281
+#: common/models.py:1300
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1282
+#: common/models.py:1301
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1289
+#: common/models.py:1308
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1290
+#: common/models.py:1309
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1297
+#: common/models.py:1316
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1298
+#: common/models.py:1317
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1305
+#: common/models.py:1324
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1306
+#: common/models.py:1325
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1323 common/models.py:1639
+#: common/models.py:1342 common/models.py:1658
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1364
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1346
+#: common/models.py:1365
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1352
+#: common/models.py:1371
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1372
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1359
+#: common/models.py:1378
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1360
+#: common/models.py:1379
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1366
+#: common/models.py:1385
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1367
+#: common/models.py:1386
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1373
+#: common/models.py:1392
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1374
+#: common/models.py:1393
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1380
+#: common/models.py:1399
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1381
+#: common/models.py:1400
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1387
+#: common/models.py:1406
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1388
+#: common/models.py:1407
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1394
+#: common/models.py:1413
msgid "Show low stock"
msgstr ""
-#: common/models.py:1395
+#: common/models.py:1414
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1401
+#: common/models.py:1420
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1402
+#: common/models.py:1421
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1408
+#: common/models.py:1427
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1409
+#: common/models.py:1428
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1434
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1416
+#: common/models.py:1435
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1422
+#: common/models.py:1441
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1423
+#: common/models.py:1442
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1429
+#: common/models.py:1448
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1430
+#: common/models.py:1449
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1455
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1437
+#: common/models.py:1456
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1443
+#: common/models.py:1462
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1463
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1450
+#: common/models.py:1469
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1451
+#: common/models.py:1470
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1457
+#: common/models.py:1476
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1458
+#: common/models.py:1477
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1464
+#: common/models.py:1483
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1465
+#: common/models.py:1484
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1471
+#: common/models.py:1490
msgid "Inline label display"
msgstr ""
-#: common/models.py:1472
+#: common/models.py:1491
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1478
+#: common/models.py:1497
msgid "Inline report display"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1498
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1504
msgid "Search Parts"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1505
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1511
msgid "Seach Supplier Parts"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1512
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1518
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1500
+#: common/models.py:1519
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1506
+#: common/models.py:1525
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1507
+#: common/models.py:1526
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1513
+#: common/models.py:1532
msgid "Search Categories"
msgstr ""
-#: common/models.py:1514
+#: common/models.py:1533
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1520
+#: common/models.py:1539
msgid "Search Stock"
msgstr ""
-#: common/models.py:1521
+#: common/models.py:1540
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1527
+#: common/models.py:1546
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1528
+#: common/models.py:1547
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1534
+#: common/models.py:1553
msgid "Search Locations"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1554
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1541
+#: common/models.py:1560
msgid "Search Companies"
msgstr ""
-#: common/models.py:1542
+#: common/models.py:1561
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1548
+#: common/models.py:1567
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1549
+#: common/models.py:1568
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1555
+#: common/models.py:1574
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1556
+#: common/models.py:1575
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1581
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1582
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:1569
+#: common/models.py:1588
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1589
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:1576
+#: common/models.py:1595
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1596
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:1583
+#: common/models.py:1602
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1603
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1609
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1591
+#: common/models.py:1610
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1597
+#: common/models.py:1616
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1617
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1604
+#: common/models.py:1623
msgid "Date Format"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1624
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:1619 part/templates/part/detail.html:41
+#: common/models.py:1638 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:1620
+#: common/models.py:1639
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:1679
+#: common/models.py:1698
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1686 company/serializers.py:366
+#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
-#: common/models.py:1687
+#: common/models.py:1706
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1847 common/models.py:2025
+#: common/models.py:1866 common/models.py:2044
msgid "Endpoint"
msgstr ""
-#: common/models.py:1848
+#: common/models.py:1867
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1876
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1862 part/models.py:914 plugin/models.py:99
+#: common/models.py:1881 part/models.py:921 plugin/models.py:100
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:104
#: templates/js/translated/table_filters.js:316
@@ -2596,67 +2620,67 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1882
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1896
msgid "Token"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1897
msgid "Token for access"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1904
msgid "Secret"
msgstr ""
-#: common/models.py:1886
+#: common/models.py:1905
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1992
+#: common/models.py:2011
msgid "Message ID"
msgstr ""
-#: common/models.py:1993
+#: common/models.py:2012
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2001
+#: common/models.py:2020
msgid "Host"
msgstr ""
-#: common/models.py:2002
+#: common/models.py:2021
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2009
+#: common/models.py:2028
msgid "Header"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2029
msgid "Header of this message"
msgstr ""
-#: common/models.py:2016
+#: common/models.py:2035
msgid "Body"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2036
msgid "Body of this message"
msgstr ""
-#: common/models.py:2026
+#: common/models.py:2045
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2050
msgid "Worked on"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2051
msgid "Was the work on this message finished?"
msgstr ""
@@ -2763,7 +2787,7 @@ msgstr ""
msgid "Link to external company information"
msgstr ""
-#: company/models.py:135 part/models.py:808
+#: company/models.py:135 part/models.py:815
msgid "Image"
msgstr ""
@@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?"
msgstr ""
#: company/models.py:148 company/serializers.py:372
-#: company/templates/company/company_base.html:106 part/serializers.py:151
-#: part/serializers.py:182 stock/serializers.py:180
+#: company/templates/company/company_base.html:106 part/serializers.py:153
+#: part/serializers.py:184 stock/serializers.py:180
msgid "Currency"
msgstr ""
@@ -2805,7 +2829,7 @@ msgstr ""
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:248 company/models.py:481 stock/models.py:591
+#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
#: templates/js/translated/bom.js:543
msgid "Base Part"
@@ -2837,7 +2861,7 @@ msgstr ""
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
-#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023
+#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2866,9 +2890,9 @@ msgstr ""
#: company/models.py:365
#: report/templates/report/inventree_test_report_base.html:95
-#: stock/models.py:2088 templates/js/translated/company.js:546
-#: templates/js/translated/company.js:764 templates/js/translated/part.js:845
-#: templates/js/translated/stock.js:1356
+#: stock/models.py:2095 templates/js/translated/company.js:546
+#: templates/js/translated/company.js:764 templates/js/translated/part.js:849
+#: templates/js/translated/stock.js:1360
msgid "Value"
msgstr ""
@@ -2876,10 +2900,10 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:881 part/models.py:2379
+#: company/models.py:372 part/models.py:888 part/models.py:2386
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
-#: templates/js/translated/company.js:770 templates/js/translated/part.js:851
+#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
msgid "Units"
msgstr ""
@@ -2899,7 +2923,7 @@ msgstr ""
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
-#: templates/js/translated/part.js:217 templates/js/translated/part.js:991
+#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
msgstr ""
@@ -2911,7 +2935,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
-#: templates/js/translated/part.js:1009
+#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2932,23 +2956,23 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2613 part/templates/part/upload_bom.html:59
+#: part/models.py:2620 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:528 company/templates/company/supplier_part.html:139
-#: stock/models.py:617 stock/templates/stock/item_base.html:245
-#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972
+#: stock/models.py:624 stock/templates/stock/item_base.html:245
+#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976
msgid "Packaging"
msgstr ""
@@ -2956,7 +2980,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1737
+#: company/models.py:530 part/models.py:1744
msgid "multiple"
msgstr ""
@@ -2969,7 +2993,7 @@ msgstr ""
#: templates/email/low_stock_notification.html:18
#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:599
+#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
msgstr ""
@@ -3042,12 +3066,12 @@ msgid "Download image from URL"
msgstr ""
#: company/templates/company/company_base.html:86 order/models.py:637
-#: order/templates/order/sales_order_base.html:116 stock/models.py:636
-#: stock/models.py:637 stock/serializers.py:809
+#: order/templates/order/sales_order_base.html:116 stock/models.py:643
+#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
-#: templates/js/translated/stock.js:2550
+#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
msgstr ""
@@ -3088,7 +3112,7 @@ msgstr ""
#: company/templates/company/detail.html:36
#: company/templates/company/detail.html:84
-#: part/templates/part/category.html:176
+#: part/templates/part/category.html:182
msgid "Order parts"
msgstr ""
@@ -3236,7 +3260,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:170
#: part/templates/part/detail.html:186
#: templates/InvenTree/settings/category.html:12
-#: templates/InvenTree/settings/part.html:66
+#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
msgstr ""
@@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items"
msgstr ""
#: company/templates/company/supplier_part.html:7
-#: company/templates/company/supplier_part.html:24 stock/models.py:600
+#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
-#: templates/js/translated/stock.js:1929
+#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock"
msgstr ""
#: company/templates/company/supplier_part.html:168
-#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176
+#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181
msgid "Create new stock item"
msgstr ""
#: company/templates/company/supplier_part.html:169
-#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177
-#: templates/js/translated/stock.js:431
+#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182
+#: templates/js/translated/stock.js:435
msgid "New Stock Item"
msgstr ""
@@ -3335,7 +3359,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3344,12 +3368,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2234
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2248
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3371,13 +3395,13 @@ msgstr ""
#: company/templates/company/supplier_part_navbar.html:15
#: part/templates/part/part_sidebar.html:14
-#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19
+#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747
-#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456
-#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750
+#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
+#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
+#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
#: templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3397,14 +3421,14 @@ msgid "Pricing"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5
-#: part/templates/part/category.html:197
+#: part/templates/part/category.html:203
#: part/templates/part/category_sidebar.html:17
-#: stock/templates/stock/location.html:147
-#: stock/templates/stock/location.html:161
-#: stock/templates/stock/location.html:173
+#: stock/templates/stock/location.html:152
+#: stock/templates/stock/location.html:166
+#: stock/templates/stock/location.html:178
#: stock/templates/stock/location_sidebar.html:7
#: templates/InvenTree/search.html:153 templates/js/translated/search.js:223
-#: templates/js/translated/stock.js:2427 users/models.py:40
+#: templates/js/translated/stock.js:2436 users/models.py:40
msgid "Stock Items"
msgstr ""
@@ -3661,8 +3685,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
-#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909
-#: templates/js/translated/stock.js:2531
+#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
msgstr ""
@@ -3672,7 +3696,7 @@ msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
-#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087
+#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
msgstr ""
@@ -3681,9 +3705,9 @@ msgstr ""
msgid "Number of items received"
msgstr ""
-#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727
+#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734
#: stock/serializers.py:171 stock/templates/stock/item_base.html:191
-#: templates/js/translated/stock.js:1960
+#: templates/js/translated/stock.js:1964
msgid "Purchase Price"
msgstr ""
@@ -4071,8 +4095,8 @@ msgstr ""
#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621
-#: templates/js/translated/stock.js:789
+#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -4266,8 +4290,8 @@ msgstr ""
msgid "This field is required"
msgstr ""
-#: part/bom.py:127 part/models.py:98 part/models.py:817
-#: part/templates/part/category.html:108 part/templates/part/part_base.html:330
+#: part/bom.py:127 part/models.py:98 part/models.py:824
+#: part/templates/part/category.html:114 part/templates/part/part_base.html:330
msgid "Default Location"
msgstr ""
@@ -4281,9 +4305,9 @@ msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586
-#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298
-#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486
+#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4304,516 +4328,524 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15
+#: part/models.py:107 stock/models.py:84
+msgid "Icon"
+msgstr ""
+
+#: part/models.py:108 stock/models.py:85
+msgid "Icon (optional)"
+msgstr ""
+
+#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:116 part/templates/part/category.html:128
+#: part/models.py:123 part/templates/part/category.html:134
#: templates/InvenTree/search.html:95 templates/js/translated/search.js:198
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:337 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:17 part/templates/part/category.html:133
-#: part/templates/part/category.html:153
+#: part/models.py:344 part/templates/part/cat_link.html:3
+#: part/templates/part/category.html:23 part/templates/part/category.html:139
+#: part/templates/part/category.html:159
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
-#: part/models.py:422
+#: part/models.py:429
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:492 part/models.py:504
+#: part/models.py:499 part/models.py:511
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:621
+#: part/models.py:628
msgid "Next available serial numbers are"
msgstr ""
-#: part/models.py:625
+#: part/models.py:632
msgid "Next available serial number is"
msgstr ""
-#: part/models.py:630
+#: part/models.py:637
msgid "Most recent serial number is"
msgstr ""
-#: part/models.py:711
+#: part/models.py:718
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:738 part/models.py:2509
+#: part/models.py:745 part/models.py:2516
msgid "Part name"
msgstr ""
-#: part/models.py:745
+#: part/models.py:752
msgid "Is Template"
msgstr ""
-#: part/models.py:746
+#: part/models.py:753
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:756
+#: part/models.py:763
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:757
+#: part/models.py:764
msgid "Variant Of"
msgstr ""
-#: part/models.py:763
+#: part/models.py:770
msgid "Part description"
msgstr ""
-#: part/models.py:768 part/templates/part/category.html:86
+#: part/models.py:775 part/templates/part/category.html:92
#: part/templates/part/part_base.html:294
msgid "Keywords"
msgstr ""
-#: part/models.py:769
+#: part/models.py:776
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:776 part/models.py:2211 part/models.py:2454
+#: part/models.py:783 part/models.py:2218 part/models.py:2461
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
-#: part/models.py:777
+#: part/models.py:784
msgid "Part category"
msgstr ""
-#: part/models.py:782 part/templates/part/part_base.html:266
-#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391
-#: templates/js/translated/stock.js:1722
+#: part/models.py:789 part/templates/part/part_base.html:266
+#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395
+#: templates/js/translated/stock.js:1726
msgid "IPN"
msgstr ""
-#: part/models.py:783
+#: part/models.py:790
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:789
+#: part/models.py:796
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:790 part/templates/part/part_base.html:273
-#: report/models.py:171 templates/js/translated/part.js:739
+#: part/models.py:797 part/templates/part/part_base.html:273
+#: report/models.py:171 templates/js/translated/part.js:743
msgid "Revision"
msgstr ""
-#: part/models.py:815
+#: part/models.py:822
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:860 part/templates/part/part_base.html:339
+#: part/models.py:867 part/templates/part/part_base.html:339
msgid "Default Supplier"
msgstr ""
-#: part/models.py:861
+#: part/models.py:868
msgid "Default supplier part"
msgstr ""
-#: part/models.py:868
+#: part/models.py:875
msgid "Default Expiry"
msgstr ""
-#: part/models.py:869
+#: part/models.py:876
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:874 part/templates/part/part_base.html:200
+#: part/models.py:881 part/templates/part/part_base.html:200
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:875
+#: part/models.py:882
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:882
+#: part/models.py:889
msgid "Stock keeping units for this part"
msgstr ""
-#: part/models.py:888
+#: part/models.py:895
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:894
+#: part/models.py:901
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:900
+#: part/models.py:907
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:905
+#: part/models.py:912
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:910
+#: part/models.py:917
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:915
+#: part/models.py:922
msgid "Is this part active?"
msgstr ""
-#: part/models.py:920
+#: part/models.py:927
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:922
+#: part/models.py:929
msgid "Part notes"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "BOM checksum"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:927
+#: part/models.py:934
msgid "BOM checked by"
msgstr ""
-#: part/models.py:929
+#: part/models.py:936
msgid "BOM checked date"
msgstr ""
-#: part/models.py:933
+#: part/models.py:940
msgid "Creation User"
msgstr ""
-#: part/models.py:1737
+#: part/models.py:1744
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2258
+#: part/models.py:2265
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2275
+#: part/models.py:2282
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2295 templates/js/translated/part.js:1997
-#: templates/js/translated/stock.js:1336
+#: part/models.py:2302 templates/js/translated/part.js:2002
+#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2296
+#: part/models.py:2303
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2301
+#: part/models.py:2308
msgid "Test Description"
msgstr ""
-#: part/models.py:2302
+#: part/models.py:2309
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2307 templates/js/translated/part.js:2006
+#: part/models.py:2314 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2315
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2313 templates/js/translated/part.js:2014
+#: part/models.py:2320 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2314
+#: part/models.py:2321
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2319 templates/js/translated/part.js:2021
+#: part/models.py:2326 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2320
+#: part/models.py:2327
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2328
+#: part/models.py:2335
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2364
+#: part/models.py:2371
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2372
+#: part/models.py:2379
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2386
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2410
+#: part/models.py:2417
msgid "Parent Part"
msgstr ""
-#: part/models.py:2412 part/models.py:2460 part/models.py:2461
+#: part/models.py:2419 part/models.py:2467 part/models.py:2468
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Data"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2465 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2466
+#: part/models.py:2473
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2501
+#: part/models.py:2508
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2504 templates/js/translated/model_renderers.js:212
+#: part/models.py:2511 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2505
+#: part/models.py:2512
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2515
msgid "Part Name"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2519
msgid "Part IPN"
msgstr ""
-#: part/models.py:2513
+#: part/models.py:2520
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2516
+#: part/models.py:2523
msgid "Level"
msgstr ""
-#: part/models.py:2517
+#: part/models.py:2524
msgid "BOM level"
msgstr ""
-#: part/models.py:2586
+#: part/models.py:2593
msgid "Select parent part"
msgstr ""
-#: part/models.py:2594
+#: part/models.py:2601
msgid "Sub part"
msgstr ""
-#: part/models.py:2595
+#: part/models.py:2602
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2608
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2603 part/templates/part/upload_bom.html:58
+#: part/models.py:2610 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2603
+#: part/models.py:2610
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2606 part/templates/part/upload_bom.html:55
+#: part/models.py:2613 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2607
+#: part/models.py:2614
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2617
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2613
+#: part/models.py:2620
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "Checksum"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2619 part/templates/part/upload_bom.html:57
+#: part/models.py:2626 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1016
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2627
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2625 part/templates/part/upload_bom.html:56
+#: part/models.py:2632 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1008
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2626
+#: part/models.py:2633
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2704 stock/models.py:461
+#: part/models.py:2711 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2713 part/models.py:2715
+#: part/models.py:2720 part/models.py:2722
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2820
+#: part/models.py:2827
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2841
+#: part/models.py:2848
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2854
+#: part/models.py:2861
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2862
+#: part/models.py:2869
msgid "Substitute part"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2884
msgid "Part 1"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Part 2"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2906
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2903
+#: part/models.py:2910
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181
+#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:812
+#: part/serializers.py:814
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:820
+#: part/serializers.py:822
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:821
+#: part/serializers.py:823
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:826
+#: part/serializers.py:828
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:827
+#: part/serializers.py:829
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:832
+#: part/serializers.py:834
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:833
+#: part/serializers.py:835
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:838
+#: part/serializers.py:840
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:839
+#: part/serializers.py:841
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:879
+#: part/serializers.py:881
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:880
+#: part/serializers.py:882
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:910
+#: part/serializers.py:912
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:953
+#: part/serializers.py:955
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:956
+#: part/serializers.py:958
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:959
+#: part/serializers.py:961
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:968
+#: part/serializers.py:970
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:976
+#: part/serializers.py:978
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:997
+#: part/serializers.py:999
msgid "At least one BOM item is required"
msgstr ""
@@ -4853,101 +4885,101 @@ msgstr ""
msgid "Delete Items"
msgstr ""
-#: part/templates/part/category.html:28 part/templates/part/category.html:32
+#: part/templates/part/category.html:34 part/templates/part/category.html:38
msgid "You are subscribed to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:36
+#: part/templates/part/category.html:42
msgid "Subscribe to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:42
+#: part/templates/part/category.html:48
msgid "Category Actions"
msgstr ""
-#: part/templates/part/category.html:47
+#: part/templates/part/category.html:53
msgid "Edit category"
msgstr ""
-#: part/templates/part/category.html:48
+#: part/templates/part/category.html:54
msgid "Edit Category"
msgstr ""
-#: part/templates/part/category.html:52
+#: part/templates/part/category.html:58
msgid "Delete category"
msgstr ""
-#: part/templates/part/category.html:53
+#: part/templates/part/category.html:59
msgid "Delete Category"
msgstr ""
-#: part/templates/part/category.html:61
+#: part/templates/part/category.html:67
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:62
+#: part/templates/part/category.html:68
msgid "New Category"
msgstr ""
-#: part/templates/part/category.html:80 part/templates/part/category.html:93
+#: part/templates/part/category.html:86 part/templates/part/category.html:99
msgid "Category Path"
msgstr ""
-#: part/templates/part/category.html:94
+#: part/templates/part/category.html:100
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:114 part/templates/part/category.html:222
+#: part/templates/part/category.html:120 part/templates/part/category.html:228
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
-#: part/templates/part/category.html:119
+#: part/templates/part/category.html:125
msgid "Parts (Including subcategories)"
msgstr ""
-#: part/templates/part/category.html:157
+#: part/templates/part/category.html:163
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:158 templates/js/translated/bom.js:367
+#: part/templates/part/category.html:164 templates/js/translated/bom.js:367
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:168 part/templates/part/detail.html:363
+#: part/templates/part/category.html:174 part/templates/part/detail.html:363
#: part/templates/part/detail.html:394
msgid "Options"
msgstr ""
-#: part/templates/part/category.html:172
+#: part/templates/part/category.html:178
msgid "Set category"
msgstr ""
-#: part/templates/part/category.html:173
+#: part/templates/part/category.html:179
msgid "Set Category"
msgstr ""
-#: part/templates/part/category.html:180 part/templates/part/category.html:181
+#: part/templates/part/category.html:186 part/templates/part/category.html:187
msgid "Print Labels"
msgstr ""
-#: part/templates/part/category.html:206
+#: part/templates/part/category.html:212
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:320
+#: part/templates/part/category.html:327
msgid "Create Part Category"
msgstr ""
-#: part/templates/part/category.html:340
+#: part/templates/part/category.html:347
msgid "Create Part"
msgstr ""
-#: part/templates/part/category.html:343
+#: part/templates/part/category.html:350
msgid "Create another part after this one"
msgstr ""
-#: part/templates/part/category.html:344
+#: part/templates/part/category.html:351
msgid "Part created successfully"
msgstr ""
@@ -4955,7 +4987,7 @@ msgstr ""
msgid "Import Parts"
msgstr ""
-#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375
+#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379
msgid "Duplicate Part"
msgstr ""
@@ -5177,19 +5209,19 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
-#: stock/templates/stock/location.html:43
+#: stock/templates/stock/location.html:48
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:46
#: stock/templates/stock/item_base.html:45
-#: stock/templates/stock/location.html:45 templates/qr_button.html:1
+#: stock/templates/stock/location.html:50 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:49
#: stock/templates/stock/item_base.html:63
-#: stock/templates/stock/location.html:47
+#: stock/templates/stock/location.html:52
msgid "Print Label"
msgstr ""
@@ -5199,7 +5231,7 @@ msgstr ""
#: part/templates/part/part_base.html:60
#: stock/templates/stock/item_base.html:116
-#: stock/templates/stock/location.html:56
+#: stock/templates/stock/location.html:61
msgid "Stock actions"
msgstr ""
@@ -5260,7 +5292,7 @@ msgstr ""
#: templates/js/translated/company.js:624
#: templates/js/translated/company.js:884
#: templates/js/translated/model_renderers.js:204
-#: templates/js/translated/part.js:650 templates/js/translated/part.js:727
+#: templates/js/translated/part.js:654 templates/js/translated/part.js:731
msgid "Inactive"
msgstr ""
@@ -5294,9 +5326,9 @@ msgstr ""
msgid "Can Build"
msgstr ""
-#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589
-#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
+#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5469,8 +5501,8 @@ msgstr ""
msgid "No sale pice history available for this part."
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612
-#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5635,51 +5667,55 @@ msgstr ""
msgid "Allow sending of emails for event notifications"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Plugin Metadata"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "JSON metadata field, for use by external plugins"
msgstr ""
-#: plugin/models.py:79
+#: plugin/models.py:80
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:80
+#: plugin/models.py:81
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:85
+#: plugin/models.py:86
msgid "Key"
msgstr ""
-#: plugin/models.py:86
+#: plugin/models.py:87
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:94
+#: plugin/models.py:95
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:100
+#: plugin/models.py:101
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:168
+#: plugin/models.py:158
+msgid "Sample plugin"
+msgstr ""
+
+#: plugin/models.py:186
msgid "Plugin"
msgstr ""
-#: plugin/models.py:231
+#: plugin/models.py:249
msgid "Method"
msgstr ""
-#: plugin/plugin.py:228
+#: plugin/plugin.py:251
msgid "No author found"
msgstr ""
-#: plugin/plugin.py:240
+#: plugin/plugin.py:263
msgid "No date found"
msgstr ""
@@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:641 stock/templates/stock/item_base.html:322
+#: stock/models.py:648 stock/templates/stock/item_base.html:322
#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
#: templates/js/translated/model_renderers.js:118
#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486
+#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5871,19 +5907,19 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:93
-#: stock/models.py:2076
+#: stock/models.py:2083
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:94
-#: stock/models.py:2082
+#: stock/models.py:2089
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:53
#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459
+#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
msgid "Date"
msgstr ""
@@ -5901,8 +5937,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:137
-#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776
-#: templates/js/translated/stock.js:2708
+#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780
+#: templates/js/translated/stock.js:2717
msgid "Serial"
msgstr ""
@@ -5918,241 +5954,241 @@ msgstr ""
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
-#: stock/models.py:82 stock/models.py:732
+#: stock/models.py:89 stock/models.py:739
#: stock/templates/stock/item_base.html:252
msgid "Owner"
msgstr ""
-#: stock/models.py:83 stock/models.py:733
+#: stock/models.py:90 stock/models.py:740
msgid "Select Owner"
msgstr ""
-#: stock/models.py:435
+#: stock/models.py:442
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:467 stock/serializers.py:95
+#: stock/models.py:474 stock/serializers.py:95
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:484
+#: stock/models.py:491
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:494 stock/models.py:503
+#: stock/models.py:501 stock/models.py:510
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:502
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:517
+#: stock/models.py:524
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:523
+#: stock/models.py:530
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:537
+#: stock/models.py:544
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:583
+#: stock/models.py:590
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:593
+#: stock/models.py:600
msgid "Base part"
msgstr ""
-#: stock/models.py:601
+#: stock/models.py:608
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:608 stock/templates/stock/location.html:17
+#: stock/models.py:615 stock/templates/stock/location.html:17
#: stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:611
+#: stock/models.py:618
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:618
+#: stock/models.py:625
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:624 stock/templates/stock/item_base.html:361
+#: stock/models.py:631 stock/templates/stock/item_base.html:361
msgid "Installed In"
msgstr ""
-#: stock/models.py:627
+#: stock/models.py:634
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:643
+#: stock/models.py:650
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:657
+#: stock/models.py:664
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:662
+#: stock/models.py:669
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:671
+#: stock/models.py:678
msgid "Source Build"
msgstr ""
-#: stock/models.py:673
+#: stock/models.py:680
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:684
+#: stock/models.py:691
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:687
+#: stock/models.py:694
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:693
+#: stock/models.py:700
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:699 stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1879
+#: stock/models.py:706 stock/templates/stock/item_base.html:429
+#: templates/js/translated/stock.js:1883
msgid "Expiry Date"
msgstr ""
-#: stock/models.py:700
+#: stock/models.py:707
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:720 stock/templates/stock/item.html:132
+#: stock/models.py:727 stock/templates/stock/item.html:132
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:728
+#: stock/models.py:735
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:756
+#: stock/models.py:763
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1235
+#: stock/models.py:1242
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1241
+#: stock/models.py:1248
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1247
+#: stock/models.py:1254
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1250
+#: stock/models.py:1257
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1253
+#: stock/models.py:1260
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1260
+#: stock/models.py:1267
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1330
+#: stock/models.py:1337
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1333
+#: stock/models.py:1340
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1336
+#: stock/models.py:1343
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1339
+#: stock/models.py:1346
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1342
+#: stock/models.py:1349
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1345
+#: stock/models.py:1352
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1352 stock/serializers.py:959
+#: stock/models.py:1359 stock/serializers.py:961
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1356
+#: stock/models.py:1363
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1360
+#: stock/models.py:1367
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1364
+#: stock/models.py:1371
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1533
+#: stock/models.py:1540
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1994
+#: stock/models.py:2001
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2052
+#: stock/models.py:2059
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2058
+#: stock/models.py:2065
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2077
+#: stock/models.py:2084
msgid "Test name"
msgstr ""
-#: stock/models.py:2083
+#: stock/models.py:2090
msgid "Test result"
msgstr ""
-#: stock/models.py:2089
+#: stock/models.py:2096
msgid "Test output value"
msgstr ""
-#: stock/models.py:2096
+#: stock/models.py:2103
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2102
+#: stock/models.py:2109
msgid "Test notes"
msgstr ""
@@ -6177,7 +6213,7 @@ msgstr ""
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149
+#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151
msgid "Destination stock location"
msgstr ""
@@ -6225,63 +6261,63 @@ msgstr ""
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:771
+#: stock/serializers.py:773
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:775
+#: stock/serializers.py:777
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:779
+#: stock/serializers.py:781
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:810
+#: stock/serializers.py:812
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:816
+#: stock/serializers.py:818
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:824
+#: stock/serializers.py:826
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:834 stock/serializers.py:1065
+#: stock/serializers.py:836 stock/serializers.py:1067
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:923
+#: stock/serializers.py:925
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:928
+#: stock/serializers.py:930
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:929
+#: stock/serializers.py:931
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:934
+#: stock/serializers.py:936
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:935
+#: stock/serializers.py:937
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:947
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1027
+#: stock/serializers.py:1029
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1055
+#: stock/serializers.py:1057
msgid "Stock transaction notes"
msgstr ""
@@ -6318,7 +6354,7 @@ msgstr ""
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852
+#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861
msgid "Install Stock Item"
msgstr ""
@@ -6326,7 +6362,7 @@ msgstr ""
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518
+#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522
msgid "Add Test Result"
msgstr ""
@@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:63 templates/stock_table.html:47
+#: stock/templates/stock/location.html:68 templates/stock_table.html:47
msgid "Count stock"
msgstr ""
@@ -6374,7 +6410,7 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:93
-#: stock/templates/stock/location.html:69 templates/stock_table.html:48
+#: stock/templates/stock/location.html:74 templates/stock_table.html:48
msgid "Transfer stock"
msgstr ""
@@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be
msgstr ""
#: stock/templates/stock/item_base.html:257
-#: stock/templates/stock/location.html:127
+#: stock/templates/stock/location.html:132
msgid "Read only"
msgstr ""
@@ -6513,7 +6549,7 @@ msgid "Stale"
msgstr ""
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895
+#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899
msgid "Last Updated"
msgstr ""
@@ -6557,58 +6593,58 @@ msgstr ""
msgid "Select quantity to serialize, and unique serial numbers."
msgstr ""
-#: stock/templates/stock/location.html:33
+#: stock/templates/stock/location.html:38
msgid "Locate stock location"
msgstr ""
-#: stock/templates/stock/location.html:49
+#: stock/templates/stock/location.html:54
msgid "Check-in Items"
msgstr ""
-#: stock/templates/stock/location.html:77
+#: stock/templates/stock/location.html:82
msgid "Location actions"
msgstr ""
-#: stock/templates/stock/location.html:79
+#: stock/templates/stock/location.html:84
msgid "Edit location"
msgstr ""
-#: stock/templates/stock/location.html:81
+#: stock/templates/stock/location.html:86
msgid "Delete location"
msgstr ""
-#: stock/templates/stock/location.html:90
+#: stock/templates/stock/location.html:95
msgid "Create new stock location"
msgstr ""
-#: stock/templates/stock/location.html:91
+#: stock/templates/stock/location.html:96
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:109
-#: stock/templates/stock/location.html:115
+#: stock/templates/stock/location.html:114
+#: stock/templates/stock/location.html:120
msgid "Location Path"
msgstr ""
-#: stock/templates/stock/location.html:116
+#: stock/templates/stock/location.html:121
msgid "Top level stock location"
msgstr ""
-#: stock/templates/stock/location.html:122
+#: stock/templates/stock/location.html:127
msgid "Location Owner"
msgstr ""
-#: stock/templates/stock/location.html:126
+#: stock/templates/stock/location.html:131
msgid "You are not in the list of owners of this location. This stock location cannot be edited."
msgstr ""
-#: stock/templates/stock/location.html:142
-#: stock/templates/stock/location.html:189
+#: stock/templates/stock/location.html:147
+#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:5
msgid "Sublocations"
msgstr ""
-#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165
+#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165
#: templates/js/translated/search.js:238 users/models.py:39
msgid "Stock Locations"
msgstr ""
@@ -6880,15 +6916,15 @@ msgstr ""
msgid "Part Settings"
msgstr ""
-#: templates/InvenTree/settings/part.html:44
+#: templates/InvenTree/settings/part.html:46
msgid "Part Import"
msgstr ""
-#: templates/InvenTree/settings/part.html:48
+#: templates/InvenTree/settings/part.html:50
msgid "Import Part"
msgstr ""
-#: templates/InvenTree/settings/part.html:62
+#: templates/InvenTree/settings/part.html:64
msgid "Part Parameter Templates"
msgstr ""
@@ -6900,47 +6936,47 @@ 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:34
+#: templates/InvenTree/settings/plugin.html:36
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:39
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:16
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137
+#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137
#: users/models.py:36
msgid "Admin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:50
+#: templates/InvenTree/settings/plugin.html:52
#: templates/InvenTree/settings/plugin_settings.html:28
msgid "Author"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:52
+#: templates/InvenTree/settings/plugin.html:54
#: templates/InvenTree/settings/plugin_settings.html:43
msgid "Version"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:74
+#: templates/InvenTree/settings/plugin.html:76
msgid "Sample"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:99
+#: templates/InvenTree/settings/plugin.html:101
msgid "Inactive plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:122
+#: templates/InvenTree/settings/plugin.html:124
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:131
+#: templates/InvenTree/settings/plugin.html:133
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:133
+#: templates/InvenTree/settings/plugin.html:135
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -7004,11 +7040,11 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:117
+#: templates/InvenTree/settings/plugin_settings.html:120
msgid "Sign Status"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:122
+#: templates/InvenTree/settings/plugin_settings.html:125
msgid "Sign Key"
msgstr ""
@@ -7835,7 +7871,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050
+#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054
msgid "Remove stock item"
msgstr ""
@@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock"
msgstr ""
#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
-#: templates/js/translated/part.js:759
+#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
@@ -8105,12 +8141,12 @@ msgid "Complete Build Order"
msgstr ""
#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
-#: templates/js/translated/stock.js:210
+#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
@@ -8323,9 +8359,9 @@ msgstr ""
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383
-#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682
-#: templates/js/translated/stock.js:2382
+#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
+#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
@@ -8337,7 +8373,7 @@ msgstr ""
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638
+#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
@@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found"
msgstr ""
#: templates/js/translated/company.js:616
-#: templates/js/translated/company.js:876 templates/js/translated/part.js:634
-#: templates/js/translated/part.js:719
+#: templates/js/translated/company.js:876 templates/js/translated/part.js:638
+#: templates/js/translated/part.js:723
msgid "Template part"
msgstr ""
#: templates/js/translated/company.js:620
-#: templates/js/translated/company.js:880 templates/js/translated/part.js:638
-#: templates/js/translated/part.js:723
+#: templates/js/translated/company.js:880 templates/js/translated/part.js:642
+#: templates/js/translated/part.js:727
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:748 templates/js/translated/part.js:826
+#: templates/js/translated/company.js:748 templates/js/translated/part.js:830
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:785 templates/js/translated/part.js:868
+#: templates/js/translated/company.js:785 templates/js/translated/part.js:872
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:786 templates/js/translated/part.js:869
+#: templates/js/translated/company.js:786 templates/js/translated/part.js:873
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:805 templates/js/translated/part.js:886
+#: templates/js/translated/company.js:805 templates/js/translated/part.js:890
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:816 templates/js/translated/part.js:898
+#: templates/js/translated/company.js:816 templates/js/translated/part.js:902
msgid "Delete Parameter"
msgstr ""
@@ -8562,7 +8598,7 @@ msgid "Labels sent to printer"
msgstr ""
#: templates/js/translated/label.js:60 templates/js/translated/report.js:118
-#: templates/js/translated/stock.js:1074
+#: templates/js/translated/stock.js:1078
msgid "Select Stock Items"
msgstr ""
@@ -8872,7 +8908,7 @@ msgstr ""
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140
+#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
@@ -8896,7 +8932,7 @@ msgstr ""
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939
+#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
@@ -8931,7 +8967,7 @@ msgstr ""
#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484
msgid "Unit Price"
msgstr ""
@@ -8941,11 +8977,11 @@ msgid "Total Price"
msgstr ""
#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
-#: templates/js/translated/part.js:1046
+#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092
+#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
@@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation"
msgstr ""
#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
-#: templates/js/translated/stock.js:1598
+#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
@@ -9190,149 +9226,157 @@ msgstr ""
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:318
+#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118
+msgid "Icon (optional) - Explore all available icons on"
+msgstr ""
+
+#: templates/js/translated/part.js:322
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:331
+#: templates/js/translated/part.js:335
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:337
msgid "Any child categories will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:338
msgid "Any parts in this category will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:339
+#: templates/js/translated/part.js:343
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:365
+#: templates/js/translated/part.js:369
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:367
+#: templates/js/translated/part.js:371
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:378
+#: templates/js/translated/part.js:382
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:430
+#: templates/js/translated/part.js:434
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:431
+#: templates/js/translated/part.js:435
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:445
+#: templates/js/translated/part.js:449
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:447
+#: templates/js/translated/part.js:451
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:448
+#: templates/js/translated/part.js:452
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:449
+#: templates/js/translated/part.js:453
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:456
+#: templates/js/translated/part.js:460
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:492
+#: templates/js/translated/part.js:496
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:494
+#: templates/js/translated/part.js:498
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:499
+#: templates/js/translated/part.js:503
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:501
+#: templates/js/translated/part.js:505
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:518
+#: templates/js/translated/part.js:522
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:532
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:531
+#: templates/js/translated/part.js:535
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:556
+#: templates/js/translated/part.js:560
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:626 templates/js/translated/part.js:711
+#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
msgid "Trackable part"
msgstr ""
-#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
+#: templates/js/translated/part.js:634 templates/js/translated/part.js:719
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:642
+#: templates/js/translated/part.js:646
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:646
+#: templates/js/translated/part.js:650
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:774
+#: templates/js/translated/part.js:778
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1162
+#: templates/js/translated/part.js:1166
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1186
+#: templates/js/translated/part.js:1190
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:1292
+#: templates/js/translated/part.js:1296
msgid "Not available"
msgstr ""
-#: templates/js/translated/part.js:1443
+#: templates/js/translated/part.js:1447
msgid "No category"
msgstr ""
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
-#: templates/js/translated/stock.js:2343
+#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
@@ -9356,7 +9400,7 @@ msgstr ""
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
@@ -9364,67 +9408,67 @@ msgstr ""
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1925
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1983
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296
-#: templates/js/translated/stock.js:1556
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
+#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2041
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2063
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2077
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2102
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2159
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2160
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2274
+#: templates/js/translated/part.js:2279
msgid "Current Stock"
msgstr ""
-#: templates/js/translated/part.js:2307
+#: templates/js/translated/part.js:2312
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2333
+#: templates/js/translated/part.js:2338
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2403
+#: templates/js/translated/part.js:2408
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2422
+#: templates/js/translated/part.js:2427
msgid "Single Price Difference"
msgstr ""
@@ -9518,376 +9562,376 @@ msgstr ""
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:140
+#: templates/js/translated/stock.js:144
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:155
+#: templates/js/translated/stock.js:159
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:169
+#: templates/js/translated/stock.js:173
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:171
+#: templates/js/translated/stock.js:175
msgid "Any child locations will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:172
+#: templates/js/translated/stock.js:176
msgid "Any stock items in this location will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:178
+#: templates/js/translated/stock.js:182
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:223
+#: templates/js/translated/stock.js:227
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:262
+#: templates/js/translated/stock.js:266
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:268
+#: templates/js/translated/stock.js:272
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:333
+#: templates/js/translated/stock.js:337
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:353
+#: templates/js/translated/stock.js:357
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:369
+#: templates/js/translated/stock.js:373
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:374
+#: templates/js/translated/stock.js:378
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:395
+#: templates/js/translated/stock.js:399
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:445
+#: templates/js/translated/stock.js:449
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:462
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:483
+#: templates/js/translated/stock.js:487
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488
+#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:508
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:524
+#: templates/js/translated/stock.js:528
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:533
+#: templates/js/translated/stock.js:537
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:656
+#: templates/js/translated/stock.js:660
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:657
+#: templates/js/translated/stock.js:661
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:734
+#: templates/js/translated/stock.js:738
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:735
+#: templates/js/translated/stock.js:739
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:737
+#: templates/js/translated/stock.js:741
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:738
+#: templates/js/translated/stock.js:742
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:824
+#: templates/js/translated/stock.js:828
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:825
+#: templates/js/translated/stock.js:829
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:920
+#: templates/js/translated/stock.js:924
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:921
+#: templates/js/translated/stock.js:925
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:927
+#: templates/js/translated/stock.js:931
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:928
+#: templates/js/translated/stock.js:932
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:932
+#: templates/js/translated/stock.js:936
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:933
+#: templates/js/translated/stock.js:937
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:937
+#: templates/js/translated/stock.js:941
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:938 users/models.py:216
+#: templates/js/translated/stock.js:942 users/models.py:216
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:942
+#: templates/js/translated/stock.js:946
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1075
+#: templates/js/translated/stock.js:1079
msgid "You must select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1098
+#: templates/js/translated/stock.js:1102
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1234
+#: templates/js/translated/stock.js:1238
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1236
+#: templates/js/translated/stock.js:1240
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1241
+#: templates/js/translated/stock.js:1245
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1288
+#: templates/js/translated/stock.js:1292
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1291
+#: templates/js/translated/stock.js:1295
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1317
+#: templates/js/translated/stock.js:1321
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1374
+#: templates/js/translated/stock.js:1378
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1539
+#: templates/js/translated/stock.js:1543
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1561
+#: templates/js/translated/stock.js:1565
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1590
+#: templates/js/translated/stock.js:1594
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1594
+#: templates/js/translated/stock.js:1598
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1602
+#: templates/js/translated/stock.js:1606
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1608
+#: templates/js/translated/stock.js:1612
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1775
+#: templates/js/translated/stock.js:1779
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1780
+#: templates/js/translated/stock.js:1784
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1783
+#: templates/js/translated/stock.js:1787
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1786
+#: templates/js/translated/stock.js:1790
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1788
+#: templates/js/translated/stock.js:1792
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1790
+#: templates/js/translated/stock.js:1794
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1793
+#: templates/js/translated/stock.js:1797
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1797
+#: templates/js/translated/stock.js:1801
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1799
+#: templates/js/translated/stock.js:1803
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1806
+#: templates/js/translated/stock.js:1810
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1808
+#: templates/js/translated/stock.js:1812
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1810
+#: templates/js/translated/stock.js:1814
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1814
+#: templates/js/translated/stock.js:1818
#: templates/js/translated/table_filters.js:196
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:1869
msgid "Stocktake"
msgstr ""
-#: templates/js/translated/stock.js:1944
+#: templates/js/translated/stock.js:1948
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/stock.js:1986
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2155
+#: templates/js/translated/stock.js:2159
msgid "Set Stock Status"
msgstr ""
-#: templates/js/translated/stock.js:2169
+#: templates/js/translated/stock.js:2173
msgid "Select Status Code"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2174
msgid "Status code must be selected"
msgstr ""
-#: templates/js/translated/stock.js:2400
+#: templates/js/translated/stock.js:2404
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2484
+#: templates/js/translated/stock.js:2493
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2500
+#: templates/js/translated/stock.js:2509
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2522
+#: templates/js/translated/stock.js:2531
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2541
+#: templates/js/translated/stock.js:2550
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2560
+#: templates/js/translated/stock.js:2569
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2578
+#: templates/js/translated/stock.js:2587
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2601
+#: templates/js/translated/stock.js:2610
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2609
+#: templates/js/translated/stock.js:2618
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2685
+#: templates/js/translated/stock.js:2694
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772
+#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2785
+#: templates/js/translated/stock.js:2794
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2806
+#: templates/js/translated/stock.js:2815
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2807
+#: templates/js/translated/stock.js:2816
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2809
+#: templates/js/translated/stock.js:2818
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2810
+#: templates/js/translated/stock.js:2819
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2811
+#: templates/js/translated/stock.js:2820
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2812
+#: templates/js/translated/stock.js:2821
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2825
+#: templates/js/translated/stock.js:2834
msgid "Select part to install"
msgstr ""
diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po
index 59f6425738..7403ffd89b 100644
--- a/InvenTree/locale/es/LC_MESSAGES/django.po
+++ b/InvenTree/locale/es/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po
index 4e340ab2d7..78294bbda5 100644
--- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po
+++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-15 13:12+0000\n"
+"POT-Creation-Date: 2022-08-17 06:25+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -37,15 +37,15 @@ msgstr ""
#: order/templates/order/so_sidebar.html:17
#: part/templates/part/part_sidebar.html:59
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329
-#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823
-#: stock/serializers.py:922 stock/serializers.py:1054
+#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329
+#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
+#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
-#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976
+#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -200,7 +200,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:395 stock/models.py:2095
+#: InvenTree/models.py:395 stock/models.py:2102
#: templates/js/translated/attachment.js:103
#: templates/js/translated/attachment.js:241
msgid "Attachment"
@@ -212,7 +212,7 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:795
+#: part/models.py:802
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
@@ -220,8 +220,8 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:403 build/models.py:296 part/models.py:796
-#: stock/models.py:651
+#: InvenTree/models.py:403 build/models.py:296 part/models.py:803
+#: stock/models.py:658
msgid "Link to external URL"
msgstr ""
@@ -234,12 +234,12 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646
-#: common/models.py:1647 common/models.py:1870 common/models.py:1871
-#: common/models.py:2133 common/models.py:2134 part/models.py:2193
-#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239
+#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
+#: common/models.py:1666 common/models.py:1889 common/models.py:1890
+#: common/models.py:2152 common/models.py:2153 part/models.py:2200
+#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
-#: templates/js/translated/stock.js:2632
+#: templates/js/translated/stock.js:2641
msgid "User"
msgstr ""
@@ -276,19 +276,19 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856
-#: company/models.py:358 label/models.py:101 part/models.py:739
-#: part/models.py:2371 plugin/models.py:93 report/models.py:152
+#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
+#: company/models.py:358 label/models.py:101 part/models.py:746
+#: part/models.py:2378 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
-#: templates/InvenTree/settings/plugin.html:49
-#: templates/InvenTree/settings/plugin.html:132
+#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:134
#: templates/InvenTree/settings/plugin_settings.html:23
#: templates/InvenTree/settings/settings.html:347
#: templates/js/translated/company.js:545
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
-#: templates/js/translated/part.js:684 templates/js/translated/part.js:836
-#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388
+#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,21 +297,21 @@ msgstr ""
#: company/models.py:516 company/templates/company/company_base.html:71
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
-#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74
+#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
#: part/templates/part/part_base.html:167 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
-#: stock/templates/stock/location.html:103
+#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
-#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149
-#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739
-#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469
+#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
+#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -324,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -336,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2692
+#: InvenTree/serializers.py:55 part/models.py:2699
msgid "Must be a valid number"
msgstr ""
@@ -626,7 +626,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080
+#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084
msgid "Merged stock items"
msgstr ""
@@ -748,7 +748,7 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2610
+#: order/models.py:904 part/models.py:2617
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
@@ -775,10 +775,10 @@ msgstr ""
#: build/models.py:191 build/templates/build/build_base.html:77
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:336 part/models.py:2139 part/models.py:2154
-#: part/models.py:2173 part/models.py:2191 part/models.py:2290
-#: part/models.py:2410 part/models.py:2500 part/models.py:2585
-#: part/models.py:2861 part/serializers.py:811
+#: part/models.py:343 part/models.py:2146 part/models.py:2161
+#: part/models.py:2180 part/models.py:2198 part/models.py:2297
+#: part/models.py:2417 part/models.py:2507 part/models.py:2592
+#: part/models.py:2868 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -801,11 +801,11 @@ msgstr ""
#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
-#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206
-#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582
-#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954
-#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495
-#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824
+#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
+#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
+#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
+#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504
+#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833
msgid "Part"
msgstr ""
@@ -863,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:655 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1247
msgid "Batch Code"
msgstr ""
@@ -871,7 +871,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:258 order/models.py:86 part/models.py:931
+#: build/models.py:258 order/models.py:86 part/models.py:938
#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
msgid "Creation Date"
msgstr ""
@@ -904,7 +904,7 @@ msgstr ""
#: build/models.py:289 build/templates/build/build_base.html:190
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
-#: order/templates/order/sales_order_base.html:183 part/models.py:935
+#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
msgid "Responsible"
@@ -917,7 +917,7 @@ msgstr ""
#: build/models.py:295 build/templates/build/detail.html:101
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:153
-#: part/templates/part/part_base.html:346 stock/models.py:649
+#: part/templates/part/part_base.html:346 stock/models.py:656
#: stock/templates/stock/item_base.html:205
msgid "External Link"
msgstr ""
@@ -983,8 +983,8 @@ msgid "Build to allocate parts"
msgstr ""
#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015
-#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754
-#: stock/serializers.py:880 stock/templates/stock/item_base.html:10
+#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756
+#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
@@ -992,8 +992,8 @@ msgstr ""
#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
-#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748
-#: templates/js/translated/stock.js:2568
+#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
+#: templates/js/translated/stock.js:2577
msgid "Stock Item"
msgstr ""
@@ -1003,11 +1003,11 @@ msgstr ""
#: build/models.py:1358 build/serializers.py:193
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:34 common/models.py:1678
+#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2601 part/templates/part/detail.html:937
+#: part/models.py:2608 part/templates/part/detail.html:937
#: part/templates/part/detail.html:1023
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
@@ -1030,11 +1030,11 @@ msgstr ""
#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147
-#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412
-#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454
-#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778
-#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417
+#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
+#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
msgstr ""
@@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output"
msgstr ""
#: build/serializers.py:208 build/serializers.py:665 order/models.py:318
-#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542
-#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244
+#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544
+#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251
#: stock/serializers.py:302
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1092,7 +1092,7 @@ msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
#: stock/serializers.py:311 templates/js/translated/order.js:1258
-#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455
+#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1118,16 +1118,16 @@ msgstr ""
#: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532
#: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534
-#: stock/serializers.py:915 stock/serializers.py:1148
+#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
-#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584
-#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956
-#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509
+#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
+#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
+#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
msgid "Location"
msgstr ""
@@ -1140,8 +1140,8 @@ msgstr ""
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825
-#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718
+#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1217,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719
-#: part/models.py:2853
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
+#: part/models.py:2860
msgid "BOM Item"
msgstr ""
@@ -1234,7 +1234,7 @@ msgstr ""
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:651 stock/serializers.py:767
+#: build/serializers.py:651 stock/serializers.py:769
msgid "Item must be in stock"
msgstr ""
@@ -1372,7 +1372,7 @@ msgstr ""
#: report/templates/report/inventree_build_order_base.html:125
#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038
+#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
@@ -1450,8 +1450,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:170
#: templates/js/translated/build.js:1182
#: templates/js/translated/model_renderers.js:124
-#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839
-#: templates/js/translated/stock.js:2725
+#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
+#: templates/js/translated/stock.js:2734
#: templates/js/translated/table_filters.js:159
#: templates/js/translated/table_filters.js:250
msgid "Batch"
@@ -1511,7 +1511,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:177 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:977
msgid "Order Parts"
msgstr ""
@@ -1564,12 +1564,12 @@ msgid "Delete outputs"
msgstr ""
#: build/templates/build/detail.html:267
-#: stock/templates/stock/location.html:197 templates/stock_table.html:27
+#: stock/templates/stock/location.html:202 templates/stock_table.html:27
msgid "Printing Actions"
msgstr ""
#: build/templates/build/detail.html:271 build/templates/build/detail.html:272
-#: stock/templates/stock/location.html:201 templates/stock_table.html:31
+#: stock/templates/stock/location.html:206 templates/stock_table.html:31
msgid "Print labels"
msgstr ""
@@ -1846,7 +1846,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2412 report/models.py:158
+#: common/models.py:951 part/models.py:2419 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1856,7 +1856,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -1866,7 +1866,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:965 part/models.py:893
+#: common/models.py:965 part/models.py:900
#: templates/js/translated/table_filters.js:455
msgid "Component"
msgstr ""
@@ -1875,7 +1875,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:972 part/models.py:904
+#: common/models.py:972 part/models.py:911
msgid "Purchaseable"
msgstr ""
@@ -1883,7 +1883,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:979 part/models.py:909
+#: common/models.py:979 part/models.py:916
#: templates/js/translated/table_filters.js:476
msgid "Salable"
msgstr ""
@@ -1892,7 +1892,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:986 part/models.py:899
+#: common/models.py:986 part/models.py:906
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:108
#: templates/js/translated/table_filters.js:488
@@ -1903,7 +1903,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:993 part/models.py:919
+#: common/models.py:993 part/models.py:926
#: part/templates/part/part_base.html:151
#: templates/js/translated/table_filters.js:42
#: templates/js/translated/table_filters.js:492
@@ -1987,608 +1987,632 @@ msgid "Format to display the part name"
msgstr ""
#: common/models.py:1074
-msgid "Enable label printing"
+msgid "Part Category Default Icon"
msgstr ""
#: common/models.py:1075
-msgid "Enable label printing from the web interface"
+msgid "Part category default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1080
+msgid "Enable label printing"
msgstr ""
#: common/models.py:1081
+msgid "Enable label printing from the web interface"
+msgstr ""
+
+#: common/models.py:1087
msgid "Label Image DPI"
msgstr ""
-#: common/models.py:1082
+#: common/models.py:1088
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1097
msgid "Enable Reports"
msgstr ""
-#: common/models.py:1092
+#: common/models.py:1098
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:1098 templates/stats.html:25
+#: common/models.py:1104 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:1099
+#: common/models.py:1105
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:1105
+#: common/models.py:1111
msgid "Page Size"
msgstr ""
-#: common/models.py:1106
+#: common/models.py:1112
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:1116
+#: common/models.py:1122
msgid "Enable Test Reports"
msgstr ""
-#: common/models.py:1117
+#: common/models.py:1123
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:1123
+#: common/models.py:1129
msgid "Attach Test Reports"
msgstr ""
-#: common/models.py:1124
+#: common/models.py:1130
msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item"
msgstr ""
-#: common/models.py:1130
+#: common/models.py:1136
msgid "Batch Code Template"
msgstr ""
-#: common/models.py:1131
+#: common/models.py:1137
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/models.py:1136
+#: common/models.py:1142
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:1137
+#: common/models.py:1143
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:1143
+#: common/models.py:1149
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:1144
+#: common/models.py:1150
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:1150
+#: common/models.py:1156
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:1151
+#: common/models.py:1157
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1159
msgid "days"
msgstr ""
-#: common/models.py:1158
+#: common/models.py:1164
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1165
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:1165
+#: common/models.py:1171
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1172
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:1172
-msgid "Build Order Reference Pattern"
-msgstr ""
-
-#: common/models.py:1173
-msgid "Required pattern for generating Build Order reference field"
+#: common/models.py:1178
+msgid "Stock Location Default Icon"
msgstr ""
#: common/models.py:1179
+msgid "Stock location default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1184
+msgid "Build Order Reference Pattern"
+msgstr ""
+
+#: common/models.py:1185
+msgid "Required pattern for generating Build Order reference field"
+msgstr ""
+
+#: common/models.py:1191
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1192
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/models.py:1186
+#: common/models.py:1198
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1199
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/models.py:1193
+#: common/models.py:1205
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1206
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/models.py:1201
+#: common/models.py:1213
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:1202
+#: common/models.py:1214
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:1208
+#: common/models.py:1220
msgid "Enable registration"
msgstr ""
-#: common/models.py:1209
+#: common/models.py:1221
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:1215
+#: common/models.py:1227
msgid "Enable SSO"
msgstr ""
-#: common/models.py:1216
+#: common/models.py:1228
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:1222
+#: common/models.py:1234
msgid "Email required"
msgstr ""
-#: common/models.py:1223
+#: common/models.py:1235
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1229
+#: common/models.py:1241
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1230
+#: common/models.py:1242
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1236
+#: common/models.py:1248
msgid "Mail twice"
msgstr ""
-#: common/models.py:1237
+#: common/models.py:1249
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1243
+#: common/models.py:1255
msgid "Password twice"
msgstr ""
-#: common/models.py:1244
+#: common/models.py:1256
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:1250
+#: common/models.py:1262
msgid "Group on signup"
msgstr ""
-#: common/models.py:1251
+#: common/models.py:1263
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1257
+#: common/models.py:1269
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:1258
+#: common/models.py:1270
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1264
+#: common/models.py:1276
msgid "Check plugins on startup"
msgstr ""
-#: common/models.py:1265
+#: common/models.py:1277
msgid "Check that all plugins are installed on startup - enable in container enviroments"
msgstr ""
-#: common/models.py:1273
+#: common/models.py:1284
+msgid "Check plugin signatures"
+msgstr ""
+
+#: common/models.py:1285
+msgid "Check and show signatures for plugins"
+msgstr ""
+
+#: common/models.py:1292
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1274
+#: common/models.py:1293
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1281
+#: common/models.py:1300
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1282
+#: common/models.py:1301
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1289
+#: common/models.py:1308
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1290
+#: common/models.py:1309
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1297
+#: common/models.py:1316
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1298
+#: common/models.py:1317
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1305
+#: common/models.py:1324
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1306
+#: common/models.py:1325
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1323 common/models.py:1639
+#: common/models.py:1342 common/models.py:1658
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1364
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1346
+#: common/models.py:1365
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1352
+#: common/models.py:1371
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1372
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1359
+#: common/models.py:1378
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1360
+#: common/models.py:1379
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1366
+#: common/models.py:1385
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1367
+#: common/models.py:1386
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1373
+#: common/models.py:1392
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1374
+#: common/models.py:1393
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1380
+#: common/models.py:1399
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1381
+#: common/models.py:1400
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1387
+#: common/models.py:1406
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1388
+#: common/models.py:1407
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1394
+#: common/models.py:1413
msgid "Show low stock"
msgstr ""
-#: common/models.py:1395
+#: common/models.py:1414
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1401
+#: common/models.py:1420
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1402
+#: common/models.py:1421
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1408
+#: common/models.py:1427
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1409
+#: common/models.py:1428
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1434
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1416
+#: common/models.py:1435
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1422
+#: common/models.py:1441
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1423
+#: common/models.py:1442
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1429
+#: common/models.py:1448
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1430
+#: common/models.py:1449
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1455
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1437
+#: common/models.py:1456
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1443
+#: common/models.py:1462
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1463
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1450
+#: common/models.py:1469
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1451
+#: common/models.py:1470
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1457
+#: common/models.py:1476
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1458
+#: common/models.py:1477
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1464
+#: common/models.py:1483
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1465
+#: common/models.py:1484
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1471
+#: common/models.py:1490
msgid "Inline label display"
msgstr ""
-#: common/models.py:1472
+#: common/models.py:1491
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1478
+#: common/models.py:1497
msgid "Inline report display"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1498
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1504
msgid "Search Parts"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1505
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1511
msgid "Seach Supplier Parts"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1512
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1518
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1500
+#: common/models.py:1519
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1506
+#: common/models.py:1525
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1507
+#: common/models.py:1526
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1513
+#: common/models.py:1532
msgid "Search Categories"
msgstr ""
-#: common/models.py:1514
+#: common/models.py:1533
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1520
+#: common/models.py:1539
msgid "Search Stock"
msgstr ""
-#: common/models.py:1521
+#: common/models.py:1540
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1527
+#: common/models.py:1546
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1528
+#: common/models.py:1547
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1534
+#: common/models.py:1553
msgid "Search Locations"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1554
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1541
+#: common/models.py:1560
msgid "Search Companies"
msgstr ""
-#: common/models.py:1542
+#: common/models.py:1561
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1548
+#: common/models.py:1567
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1549
+#: common/models.py:1568
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1555
+#: common/models.py:1574
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1556
+#: common/models.py:1575
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1581
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1582
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:1569
+#: common/models.py:1588
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1589
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:1576
+#: common/models.py:1595
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1596
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:1583
+#: common/models.py:1602
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1603
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1609
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1591
+#: common/models.py:1610
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1597
+#: common/models.py:1616
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1617
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1604
+#: common/models.py:1623
msgid "Date Format"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1624
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:1619 part/templates/part/detail.html:41
+#: common/models.py:1638 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:1620
+#: common/models.py:1639
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:1679
+#: common/models.py:1698
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1686 company/serializers.py:366
+#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
-#: common/models.py:1687
+#: common/models.py:1706
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1847 common/models.py:2025
+#: common/models.py:1866 common/models.py:2044
msgid "Endpoint"
msgstr ""
-#: common/models.py:1848
+#: common/models.py:1867
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1876
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1862 part/models.py:914 plugin/models.py:99
+#: common/models.py:1881 part/models.py:921 plugin/models.py:100
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:104
#: templates/js/translated/table_filters.js:316
@@ -2596,67 +2620,67 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1882
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1896
msgid "Token"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1897
msgid "Token for access"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1904
msgid "Secret"
msgstr ""
-#: common/models.py:1886
+#: common/models.py:1905
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1992
+#: common/models.py:2011
msgid "Message ID"
msgstr ""
-#: common/models.py:1993
+#: common/models.py:2012
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2001
+#: common/models.py:2020
msgid "Host"
msgstr ""
-#: common/models.py:2002
+#: common/models.py:2021
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2009
+#: common/models.py:2028
msgid "Header"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2029
msgid "Header of this message"
msgstr ""
-#: common/models.py:2016
+#: common/models.py:2035
msgid "Body"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2036
msgid "Body of this message"
msgstr ""
-#: common/models.py:2026
+#: common/models.py:2045
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2050
msgid "Worked on"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2051
msgid "Was the work on this message finished?"
msgstr ""
@@ -2763,7 +2787,7 @@ msgstr ""
msgid "Link to external company information"
msgstr ""
-#: company/models.py:135 part/models.py:808
+#: company/models.py:135 part/models.py:815
msgid "Image"
msgstr ""
@@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?"
msgstr ""
#: company/models.py:148 company/serializers.py:372
-#: company/templates/company/company_base.html:106 part/serializers.py:151
-#: part/serializers.py:182 stock/serializers.py:180
+#: company/templates/company/company_base.html:106 part/serializers.py:153
+#: part/serializers.py:184 stock/serializers.py:180
msgid "Currency"
msgstr ""
@@ -2805,7 +2829,7 @@ msgstr ""
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:248 company/models.py:481 stock/models.py:591
+#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
#: templates/js/translated/bom.js:543
msgid "Base Part"
@@ -2837,7 +2861,7 @@ msgstr ""
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
-#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023
+#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2866,9 +2890,9 @@ msgstr ""
#: company/models.py:365
#: report/templates/report/inventree_test_report_base.html:95
-#: stock/models.py:2088 templates/js/translated/company.js:546
-#: templates/js/translated/company.js:764 templates/js/translated/part.js:845
-#: templates/js/translated/stock.js:1356
+#: stock/models.py:2095 templates/js/translated/company.js:546
+#: templates/js/translated/company.js:764 templates/js/translated/part.js:849
+#: templates/js/translated/stock.js:1360
msgid "Value"
msgstr ""
@@ -2876,10 +2900,10 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:881 part/models.py:2379
+#: company/models.py:372 part/models.py:888 part/models.py:2386
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
-#: templates/js/translated/company.js:770 templates/js/translated/part.js:851
+#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
msgid "Units"
msgstr ""
@@ -2899,7 +2923,7 @@ msgstr ""
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
-#: templates/js/translated/part.js:217 templates/js/translated/part.js:991
+#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
msgstr ""
@@ -2911,7 +2935,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
-#: templates/js/translated/part.js:1009
+#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2932,23 +2956,23 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2613 part/templates/part/upload_bom.html:59
+#: part/models.py:2620 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:528 company/templates/company/supplier_part.html:139
-#: stock/models.py:617 stock/templates/stock/item_base.html:245
-#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972
+#: stock/models.py:624 stock/templates/stock/item_base.html:245
+#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976
msgid "Packaging"
msgstr ""
@@ -2956,7 +2980,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1737
+#: company/models.py:530 part/models.py:1744
msgid "multiple"
msgstr ""
@@ -2969,7 +2993,7 @@ msgstr ""
#: templates/email/low_stock_notification.html:18
#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:599
+#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
msgstr ""
@@ -3042,12 +3066,12 @@ msgid "Download image from URL"
msgstr ""
#: company/templates/company/company_base.html:86 order/models.py:637
-#: order/templates/order/sales_order_base.html:116 stock/models.py:636
-#: stock/models.py:637 stock/serializers.py:809
+#: order/templates/order/sales_order_base.html:116 stock/models.py:643
+#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
-#: templates/js/translated/stock.js:2550
+#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
msgstr ""
@@ -3088,7 +3112,7 @@ msgstr ""
#: company/templates/company/detail.html:36
#: company/templates/company/detail.html:84
-#: part/templates/part/category.html:176
+#: part/templates/part/category.html:182
msgid "Order parts"
msgstr ""
@@ -3236,7 +3260,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:170
#: part/templates/part/detail.html:186
#: templates/InvenTree/settings/category.html:12
-#: templates/InvenTree/settings/part.html:66
+#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
msgstr ""
@@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items"
msgstr ""
#: company/templates/company/supplier_part.html:7
-#: company/templates/company/supplier_part.html:24 stock/models.py:600
+#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
-#: templates/js/translated/stock.js:1929
+#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock"
msgstr ""
#: company/templates/company/supplier_part.html:168
-#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176
+#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181
msgid "Create new stock item"
msgstr ""
#: company/templates/company/supplier_part.html:169
-#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177
-#: templates/js/translated/stock.js:431
+#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182
+#: templates/js/translated/stock.js:435
msgid "New Stock Item"
msgstr ""
@@ -3335,7 +3359,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3344,12 +3368,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2234
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2248
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3371,13 +3395,13 @@ msgstr ""
#: company/templates/company/supplier_part_navbar.html:15
#: part/templates/part/part_sidebar.html:14
-#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19
+#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747
-#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456
-#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750
+#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
+#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
+#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
#: templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3397,14 +3421,14 @@ msgid "Pricing"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5
-#: part/templates/part/category.html:197
+#: part/templates/part/category.html:203
#: part/templates/part/category_sidebar.html:17
-#: stock/templates/stock/location.html:147
-#: stock/templates/stock/location.html:161
-#: stock/templates/stock/location.html:173
+#: stock/templates/stock/location.html:152
+#: stock/templates/stock/location.html:166
+#: stock/templates/stock/location.html:178
#: stock/templates/stock/location_sidebar.html:7
#: templates/InvenTree/search.html:153 templates/js/translated/search.js:223
-#: templates/js/translated/stock.js:2427 users/models.py:40
+#: templates/js/translated/stock.js:2436 users/models.py:40
msgid "Stock Items"
msgstr ""
@@ -3661,8 +3685,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
-#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909
-#: templates/js/translated/stock.js:2531
+#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
msgstr ""
@@ -3672,7 +3696,7 @@ msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
-#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087
+#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
msgstr ""
@@ -3681,9 +3705,9 @@ msgstr ""
msgid "Number of items received"
msgstr ""
-#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727
+#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734
#: stock/serializers.py:171 stock/templates/stock/item_base.html:191
-#: templates/js/translated/stock.js:1960
+#: templates/js/translated/stock.js:1964
msgid "Purchase Price"
msgstr ""
@@ -4071,8 +4095,8 @@ msgstr ""
#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621
-#: templates/js/translated/stock.js:789
+#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -4266,8 +4290,8 @@ msgstr ""
msgid "This field is required"
msgstr ""
-#: part/bom.py:127 part/models.py:98 part/models.py:817
-#: part/templates/part/category.html:108 part/templates/part/part_base.html:330
+#: part/bom.py:127 part/models.py:98 part/models.py:824
+#: part/templates/part/category.html:114 part/templates/part/part_base.html:330
msgid "Default Location"
msgstr ""
@@ -4281,9 +4305,9 @@ msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586
-#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298
-#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486
+#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4304,516 +4328,524 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15
+#: part/models.py:107 stock/models.py:84
+msgid "Icon"
+msgstr ""
+
+#: part/models.py:108 stock/models.py:85
+msgid "Icon (optional)"
+msgstr ""
+
+#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:116 part/templates/part/category.html:128
+#: part/models.py:123 part/templates/part/category.html:134
#: templates/InvenTree/search.html:95 templates/js/translated/search.js:198
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:337 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:17 part/templates/part/category.html:133
-#: part/templates/part/category.html:153
+#: part/models.py:344 part/templates/part/cat_link.html:3
+#: part/templates/part/category.html:23 part/templates/part/category.html:139
+#: part/templates/part/category.html:159
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
-#: part/models.py:422
+#: part/models.py:429
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:492 part/models.py:504
+#: part/models.py:499 part/models.py:511
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:621
+#: part/models.py:628
msgid "Next available serial numbers are"
msgstr ""
-#: part/models.py:625
+#: part/models.py:632
msgid "Next available serial number is"
msgstr ""
-#: part/models.py:630
+#: part/models.py:637
msgid "Most recent serial number is"
msgstr ""
-#: part/models.py:711
+#: part/models.py:718
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:738 part/models.py:2509
+#: part/models.py:745 part/models.py:2516
msgid "Part name"
msgstr ""
-#: part/models.py:745
+#: part/models.py:752
msgid "Is Template"
msgstr ""
-#: part/models.py:746
+#: part/models.py:753
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:756
+#: part/models.py:763
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:757
+#: part/models.py:764
msgid "Variant Of"
msgstr ""
-#: part/models.py:763
+#: part/models.py:770
msgid "Part description"
msgstr ""
-#: part/models.py:768 part/templates/part/category.html:86
+#: part/models.py:775 part/templates/part/category.html:92
#: part/templates/part/part_base.html:294
msgid "Keywords"
msgstr ""
-#: part/models.py:769
+#: part/models.py:776
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:776 part/models.py:2211 part/models.py:2454
+#: part/models.py:783 part/models.py:2218 part/models.py:2461
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
-#: part/models.py:777
+#: part/models.py:784
msgid "Part category"
msgstr ""
-#: part/models.py:782 part/templates/part/part_base.html:266
-#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391
-#: templates/js/translated/stock.js:1722
+#: part/models.py:789 part/templates/part/part_base.html:266
+#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395
+#: templates/js/translated/stock.js:1726
msgid "IPN"
msgstr ""
-#: part/models.py:783
+#: part/models.py:790
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:789
+#: part/models.py:796
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:790 part/templates/part/part_base.html:273
-#: report/models.py:171 templates/js/translated/part.js:739
+#: part/models.py:797 part/templates/part/part_base.html:273
+#: report/models.py:171 templates/js/translated/part.js:743
msgid "Revision"
msgstr ""
-#: part/models.py:815
+#: part/models.py:822
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:860 part/templates/part/part_base.html:339
+#: part/models.py:867 part/templates/part/part_base.html:339
msgid "Default Supplier"
msgstr ""
-#: part/models.py:861
+#: part/models.py:868
msgid "Default supplier part"
msgstr ""
-#: part/models.py:868
+#: part/models.py:875
msgid "Default Expiry"
msgstr ""
-#: part/models.py:869
+#: part/models.py:876
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:874 part/templates/part/part_base.html:200
+#: part/models.py:881 part/templates/part/part_base.html:200
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:875
+#: part/models.py:882
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:882
+#: part/models.py:889
msgid "Stock keeping units for this part"
msgstr ""
-#: part/models.py:888
+#: part/models.py:895
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:894
+#: part/models.py:901
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:900
+#: part/models.py:907
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:905
+#: part/models.py:912
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:910
+#: part/models.py:917
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:915
+#: part/models.py:922
msgid "Is this part active?"
msgstr ""
-#: part/models.py:920
+#: part/models.py:927
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:922
+#: part/models.py:929
msgid "Part notes"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "BOM checksum"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:927
+#: part/models.py:934
msgid "BOM checked by"
msgstr ""
-#: part/models.py:929
+#: part/models.py:936
msgid "BOM checked date"
msgstr ""
-#: part/models.py:933
+#: part/models.py:940
msgid "Creation User"
msgstr ""
-#: part/models.py:1737
+#: part/models.py:1744
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2258
+#: part/models.py:2265
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2275
+#: part/models.py:2282
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2295 templates/js/translated/part.js:1997
-#: templates/js/translated/stock.js:1336
+#: part/models.py:2302 templates/js/translated/part.js:2002
+#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2296
+#: part/models.py:2303
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2301
+#: part/models.py:2308
msgid "Test Description"
msgstr ""
-#: part/models.py:2302
+#: part/models.py:2309
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2307 templates/js/translated/part.js:2006
+#: part/models.py:2314 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2315
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2313 templates/js/translated/part.js:2014
+#: part/models.py:2320 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2314
+#: part/models.py:2321
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2319 templates/js/translated/part.js:2021
+#: part/models.py:2326 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2320
+#: part/models.py:2327
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2328
+#: part/models.py:2335
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2364
+#: part/models.py:2371
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2372
+#: part/models.py:2379
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2386
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2410
+#: part/models.py:2417
msgid "Parent Part"
msgstr ""
-#: part/models.py:2412 part/models.py:2460 part/models.py:2461
+#: part/models.py:2419 part/models.py:2467 part/models.py:2468
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Data"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2465 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2466
+#: part/models.py:2473
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2501
+#: part/models.py:2508
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2504 templates/js/translated/model_renderers.js:212
+#: part/models.py:2511 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2505
+#: part/models.py:2512
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2515
msgid "Part Name"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2519
msgid "Part IPN"
msgstr ""
-#: part/models.py:2513
+#: part/models.py:2520
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2516
+#: part/models.py:2523
msgid "Level"
msgstr ""
-#: part/models.py:2517
+#: part/models.py:2524
msgid "BOM level"
msgstr ""
-#: part/models.py:2586
+#: part/models.py:2593
msgid "Select parent part"
msgstr ""
-#: part/models.py:2594
+#: part/models.py:2601
msgid "Sub part"
msgstr ""
-#: part/models.py:2595
+#: part/models.py:2602
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2608
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2603 part/templates/part/upload_bom.html:58
+#: part/models.py:2610 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2603
+#: part/models.py:2610
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2606 part/templates/part/upload_bom.html:55
+#: part/models.py:2613 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2607
+#: part/models.py:2614
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2617
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2613
+#: part/models.py:2620
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "Checksum"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2619 part/templates/part/upload_bom.html:57
+#: part/models.py:2626 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1016
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2627
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2625 part/templates/part/upload_bom.html:56
+#: part/models.py:2632 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1008
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2626
+#: part/models.py:2633
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2704 stock/models.py:461
+#: part/models.py:2711 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2713 part/models.py:2715
+#: part/models.py:2720 part/models.py:2722
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2820
+#: part/models.py:2827
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2841
+#: part/models.py:2848
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2854
+#: part/models.py:2861
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2862
+#: part/models.py:2869
msgid "Substitute part"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2884
msgid "Part 1"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Part 2"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2906
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2903
+#: part/models.py:2910
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181
+#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:812
+#: part/serializers.py:814
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:820
+#: part/serializers.py:822
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:821
+#: part/serializers.py:823
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:826
+#: part/serializers.py:828
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:827
+#: part/serializers.py:829
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:832
+#: part/serializers.py:834
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:833
+#: part/serializers.py:835
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:838
+#: part/serializers.py:840
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:839
+#: part/serializers.py:841
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:879
+#: part/serializers.py:881
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:880
+#: part/serializers.py:882
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:910
+#: part/serializers.py:912
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:953
+#: part/serializers.py:955
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:956
+#: part/serializers.py:958
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:959
+#: part/serializers.py:961
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:968
+#: part/serializers.py:970
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:976
+#: part/serializers.py:978
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:997
+#: part/serializers.py:999
msgid "At least one BOM item is required"
msgstr ""
@@ -4853,101 +4885,101 @@ msgstr ""
msgid "Delete Items"
msgstr ""
-#: part/templates/part/category.html:28 part/templates/part/category.html:32
+#: part/templates/part/category.html:34 part/templates/part/category.html:38
msgid "You are subscribed to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:36
+#: part/templates/part/category.html:42
msgid "Subscribe to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:42
+#: part/templates/part/category.html:48
msgid "Category Actions"
msgstr ""
-#: part/templates/part/category.html:47
+#: part/templates/part/category.html:53
msgid "Edit category"
msgstr ""
-#: part/templates/part/category.html:48
+#: part/templates/part/category.html:54
msgid "Edit Category"
msgstr ""
-#: part/templates/part/category.html:52
+#: part/templates/part/category.html:58
msgid "Delete category"
msgstr ""
-#: part/templates/part/category.html:53
+#: part/templates/part/category.html:59
msgid "Delete Category"
msgstr ""
-#: part/templates/part/category.html:61
+#: part/templates/part/category.html:67
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:62
+#: part/templates/part/category.html:68
msgid "New Category"
msgstr ""
-#: part/templates/part/category.html:80 part/templates/part/category.html:93
+#: part/templates/part/category.html:86 part/templates/part/category.html:99
msgid "Category Path"
msgstr ""
-#: part/templates/part/category.html:94
+#: part/templates/part/category.html:100
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:114 part/templates/part/category.html:222
+#: part/templates/part/category.html:120 part/templates/part/category.html:228
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
-#: part/templates/part/category.html:119
+#: part/templates/part/category.html:125
msgid "Parts (Including subcategories)"
msgstr ""
-#: part/templates/part/category.html:157
+#: part/templates/part/category.html:163
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:158 templates/js/translated/bom.js:367
+#: part/templates/part/category.html:164 templates/js/translated/bom.js:367
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:168 part/templates/part/detail.html:363
+#: part/templates/part/category.html:174 part/templates/part/detail.html:363
#: part/templates/part/detail.html:394
msgid "Options"
msgstr ""
-#: part/templates/part/category.html:172
+#: part/templates/part/category.html:178
msgid "Set category"
msgstr ""
-#: part/templates/part/category.html:173
+#: part/templates/part/category.html:179
msgid "Set Category"
msgstr ""
-#: part/templates/part/category.html:180 part/templates/part/category.html:181
+#: part/templates/part/category.html:186 part/templates/part/category.html:187
msgid "Print Labels"
msgstr ""
-#: part/templates/part/category.html:206
+#: part/templates/part/category.html:212
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:320
+#: part/templates/part/category.html:327
msgid "Create Part Category"
msgstr ""
-#: part/templates/part/category.html:340
+#: part/templates/part/category.html:347
msgid "Create Part"
msgstr ""
-#: part/templates/part/category.html:343
+#: part/templates/part/category.html:350
msgid "Create another part after this one"
msgstr ""
-#: part/templates/part/category.html:344
+#: part/templates/part/category.html:351
msgid "Part created successfully"
msgstr ""
@@ -4955,7 +4987,7 @@ msgstr ""
msgid "Import Parts"
msgstr ""
-#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375
+#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379
msgid "Duplicate Part"
msgstr ""
@@ -5177,19 +5209,19 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
-#: stock/templates/stock/location.html:43
+#: stock/templates/stock/location.html:48
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:46
#: stock/templates/stock/item_base.html:45
-#: stock/templates/stock/location.html:45 templates/qr_button.html:1
+#: stock/templates/stock/location.html:50 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:49
#: stock/templates/stock/item_base.html:63
-#: stock/templates/stock/location.html:47
+#: stock/templates/stock/location.html:52
msgid "Print Label"
msgstr ""
@@ -5199,7 +5231,7 @@ msgstr ""
#: part/templates/part/part_base.html:60
#: stock/templates/stock/item_base.html:116
-#: stock/templates/stock/location.html:56
+#: stock/templates/stock/location.html:61
msgid "Stock actions"
msgstr ""
@@ -5260,7 +5292,7 @@ msgstr ""
#: templates/js/translated/company.js:624
#: templates/js/translated/company.js:884
#: templates/js/translated/model_renderers.js:204
-#: templates/js/translated/part.js:650 templates/js/translated/part.js:727
+#: templates/js/translated/part.js:654 templates/js/translated/part.js:731
msgid "Inactive"
msgstr ""
@@ -5294,9 +5326,9 @@ msgstr ""
msgid "Can Build"
msgstr ""
-#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589
-#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
+#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5469,8 +5501,8 @@ msgstr ""
msgid "No sale pice history available for this part."
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612
-#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5635,51 +5667,55 @@ msgstr ""
msgid "Allow sending of emails for event notifications"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Plugin Metadata"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "JSON metadata field, for use by external plugins"
msgstr ""
-#: plugin/models.py:79
+#: plugin/models.py:80
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:80
+#: plugin/models.py:81
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:85
+#: plugin/models.py:86
msgid "Key"
msgstr ""
-#: plugin/models.py:86
+#: plugin/models.py:87
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:94
+#: plugin/models.py:95
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:100
+#: plugin/models.py:101
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:168
+#: plugin/models.py:158
+msgid "Sample plugin"
+msgstr ""
+
+#: plugin/models.py:186
msgid "Plugin"
msgstr ""
-#: plugin/models.py:231
+#: plugin/models.py:249
msgid "Method"
msgstr ""
-#: plugin/plugin.py:228
+#: plugin/plugin.py:251
msgid "No author found"
msgstr ""
-#: plugin/plugin.py:240
+#: plugin/plugin.py:263
msgid "No date found"
msgstr ""
@@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:641 stock/templates/stock/item_base.html:322
+#: stock/models.py:648 stock/templates/stock/item_base.html:322
#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
#: templates/js/translated/model_renderers.js:118
#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486
+#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5871,19 +5907,19 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:93
-#: stock/models.py:2076
+#: stock/models.py:2083
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:94
-#: stock/models.py:2082
+#: stock/models.py:2089
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:53
#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459
+#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
msgid "Date"
msgstr ""
@@ -5901,8 +5937,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:137
-#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776
-#: templates/js/translated/stock.js:2708
+#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780
+#: templates/js/translated/stock.js:2717
msgid "Serial"
msgstr ""
@@ -5918,241 +5954,241 @@ msgstr ""
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
-#: stock/models.py:82 stock/models.py:732
+#: stock/models.py:89 stock/models.py:739
#: stock/templates/stock/item_base.html:252
msgid "Owner"
msgstr ""
-#: stock/models.py:83 stock/models.py:733
+#: stock/models.py:90 stock/models.py:740
msgid "Select Owner"
msgstr ""
-#: stock/models.py:435
+#: stock/models.py:442
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:467 stock/serializers.py:95
+#: stock/models.py:474 stock/serializers.py:95
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:484
+#: stock/models.py:491
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:494 stock/models.py:503
+#: stock/models.py:501 stock/models.py:510
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:502
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:517
+#: stock/models.py:524
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:523
+#: stock/models.py:530
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:537
+#: stock/models.py:544
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:583
+#: stock/models.py:590
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:593
+#: stock/models.py:600
msgid "Base part"
msgstr ""
-#: stock/models.py:601
+#: stock/models.py:608
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:608 stock/templates/stock/location.html:17
+#: stock/models.py:615 stock/templates/stock/location.html:17
#: stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:611
+#: stock/models.py:618
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:618
+#: stock/models.py:625
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:624 stock/templates/stock/item_base.html:361
+#: stock/models.py:631 stock/templates/stock/item_base.html:361
msgid "Installed In"
msgstr ""
-#: stock/models.py:627
+#: stock/models.py:634
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:643
+#: stock/models.py:650
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:657
+#: stock/models.py:664
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:662
+#: stock/models.py:669
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:671
+#: stock/models.py:678
msgid "Source Build"
msgstr ""
-#: stock/models.py:673
+#: stock/models.py:680
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:684
+#: stock/models.py:691
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:687
+#: stock/models.py:694
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:693
+#: stock/models.py:700
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:699 stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1879
+#: stock/models.py:706 stock/templates/stock/item_base.html:429
+#: templates/js/translated/stock.js:1883
msgid "Expiry Date"
msgstr ""
-#: stock/models.py:700
+#: stock/models.py:707
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:720 stock/templates/stock/item.html:132
+#: stock/models.py:727 stock/templates/stock/item.html:132
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:728
+#: stock/models.py:735
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:756
+#: stock/models.py:763
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1235
+#: stock/models.py:1242
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1241
+#: stock/models.py:1248
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1247
+#: stock/models.py:1254
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1250
+#: stock/models.py:1257
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1253
+#: stock/models.py:1260
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1260
+#: stock/models.py:1267
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1330
+#: stock/models.py:1337
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1333
+#: stock/models.py:1340
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1336
+#: stock/models.py:1343
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1339
+#: stock/models.py:1346
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1342
+#: stock/models.py:1349
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1345
+#: stock/models.py:1352
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1352 stock/serializers.py:959
+#: stock/models.py:1359 stock/serializers.py:961
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1356
+#: stock/models.py:1363
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1360
+#: stock/models.py:1367
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1364
+#: stock/models.py:1371
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1533
+#: stock/models.py:1540
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1994
+#: stock/models.py:2001
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2052
+#: stock/models.py:2059
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2058
+#: stock/models.py:2065
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2077
+#: stock/models.py:2084
msgid "Test name"
msgstr ""
-#: stock/models.py:2083
+#: stock/models.py:2090
msgid "Test result"
msgstr ""
-#: stock/models.py:2089
+#: stock/models.py:2096
msgid "Test output value"
msgstr ""
-#: stock/models.py:2096
+#: stock/models.py:2103
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2102
+#: stock/models.py:2109
msgid "Test notes"
msgstr ""
@@ -6177,7 +6213,7 @@ msgstr ""
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149
+#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151
msgid "Destination stock location"
msgstr ""
@@ -6225,63 +6261,63 @@ msgstr ""
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:771
+#: stock/serializers.py:773
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:775
+#: stock/serializers.py:777
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:779
+#: stock/serializers.py:781
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:810
+#: stock/serializers.py:812
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:816
+#: stock/serializers.py:818
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:824
+#: stock/serializers.py:826
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:834 stock/serializers.py:1065
+#: stock/serializers.py:836 stock/serializers.py:1067
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:923
+#: stock/serializers.py:925
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:928
+#: stock/serializers.py:930
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:929
+#: stock/serializers.py:931
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:934
+#: stock/serializers.py:936
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:935
+#: stock/serializers.py:937
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:947
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1027
+#: stock/serializers.py:1029
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1055
+#: stock/serializers.py:1057
msgid "Stock transaction notes"
msgstr ""
@@ -6318,7 +6354,7 @@ msgstr ""
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852
+#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861
msgid "Install Stock Item"
msgstr ""
@@ -6326,7 +6362,7 @@ msgstr ""
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518
+#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522
msgid "Add Test Result"
msgstr ""
@@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:63 templates/stock_table.html:47
+#: stock/templates/stock/location.html:68 templates/stock_table.html:47
msgid "Count stock"
msgstr ""
@@ -6374,7 +6410,7 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:93
-#: stock/templates/stock/location.html:69 templates/stock_table.html:48
+#: stock/templates/stock/location.html:74 templates/stock_table.html:48
msgid "Transfer stock"
msgstr ""
@@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be
msgstr ""
#: stock/templates/stock/item_base.html:257
-#: stock/templates/stock/location.html:127
+#: stock/templates/stock/location.html:132
msgid "Read only"
msgstr ""
@@ -6513,7 +6549,7 @@ msgid "Stale"
msgstr ""
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895
+#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899
msgid "Last Updated"
msgstr ""
@@ -6557,58 +6593,58 @@ msgstr ""
msgid "Select quantity to serialize, and unique serial numbers."
msgstr ""
-#: stock/templates/stock/location.html:33
+#: stock/templates/stock/location.html:38
msgid "Locate stock location"
msgstr ""
-#: stock/templates/stock/location.html:49
+#: stock/templates/stock/location.html:54
msgid "Check-in Items"
msgstr ""
-#: stock/templates/stock/location.html:77
+#: stock/templates/stock/location.html:82
msgid "Location actions"
msgstr ""
-#: stock/templates/stock/location.html:79
+#: stock/templates/stock/location.html:84
msgid "Edit location"
msgstr ""
-#: stock/templates/stock/location.html:81
+#: stock/templates/stock/location.html:86
msgid "Delete location"
msgstr ""
-#: stock/templates/stock/location.html:90
+#: stock/templates/stock/location.html:95
msgid "Create new stock location"
msgstr ""
-#: stock/templates/stock/location.html:91
+#: stock/templates/stock/location.html:96
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:109
-#: stock/templates/stock/location.html:115
+#: stock/templates/stock/location.html:114
+#: stock/templates/stock/location.html:120
msgid "Location Path"
msgstr ""
-#: stock/templates/stock/location.html:116
+#: stock/templates/stock/location.html:121
msgid "Top level stock location"
msgstr ""
-#: stock/templates/stock/location.html:122
+#: stock/templates/stock/location.html:127
msgid "Location Owner"
msgstr ""
-#: stock/templates/stock/location.html:126
+#: stock/templates/stock/location.html:131
msgid "You are not in the list of owners of this location. This stock location cannot be edited."
msgstr ""
-#: stock/templates/stock/location.html:142
-#: stock/templates/stock/location.html:189
+#: stock/templates/stock/location.html:147
+#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:5
msgid "Sublocations"
msgstr ""
-#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165
+#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165
#: templates/js/translated/search.js:238 users/models.py:39
msgid "Stock Locations"
msgstr ""
@@ -6880,15 +6916,15 @@ msgstr ""
msgid "Part Settings"
msgstr ""
-#: templates/InvenTree/settings/part.html:44
+#: templates/InvenTree/settings/part.html:46
msgid "Part Import"
msgstr ""
-#: templates/InvenTree/settings/part.html:48
+#: templates/InvenTree/settings/part.html:50
msgid "Import Part"
msgstr ""
-#: templates/InvenTree/settings/part.html:62
+#: templates/InvenTree/settings/part.html:64
msgid "Part Parameter Templates"
msgstr ""
@@ -6900,47 +6936,47 @@ 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:34
+#: templates/InvenTree/settings/plugin.html:36
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:39
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:16
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137
+#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137
#: users/models.py:36
msgid "Admin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:50
+#: templates/InvenTree/settings/plugin.html:52
#: templates/InvenTree/settings/plugin_settings.html:28
msgid "Author"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:52
+#: templates/InvenTree/settings/plugin.html:54
#: templates/InvenTree/settings/plugin_settings.html:43
msgid "Version"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:74
+#: templates/InvenTree/settings/plugin.html:76
msgid "Sample"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:99
+#: templates/InvenTree/settings/plugin.html:101
msgid "Inactive plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:122
+#: templates/InvenTree/settings/plugin.html:124
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:131
+#: templates/InvenTree/settings/plugin.html:133
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:133
+#: templates/InvenTree/settings/plugin.html:135
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -7004,11 +7040,11 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:117
+#: templates/InvenTree/settings/plugin_settings.html:120
msgid "Sign Status"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:122
+#: templates/InvenTree/settings/plugin_settings.html:125
msgid "Sign Key"
msgstr ""
@@ -7835,7 +7871,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050
+#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054
msgid "Remove stock item"
msgstr ""
@@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock"
msgstr ""
#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
-#: templates/js/translated/part.js:759
+#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
@@ -8105,12 +8141,12 @@ msgid "Complete Build Order"
msgstr ""
#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
-#: templates/js/translated/stock.js:210
+#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
@@ -8323,9 +8359,9 @@ msgstr ""
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383
-#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682
-#: templates/js/translated/stock.js:2382
+#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
+#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
@@ -8337,7 +8373,7 @@ msgstr ""
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638
+#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
@@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found"
msgstr ""
#: templates/js/translated/company.js:616
-#: templates/js/translated/company.js:876 templates/js/translated/part.js:634
-#: templates/js/translated/part.js:719
+#: templates/js/translated/company.js:876 templates/js/translated/part.js:638
+#: templates/js/translated/part.js:723
msgid "Template part"
msgstr ""
#: templates/js/translated/company.js:620
-#: templates/js/translated/company.js:880 templates/js/translated/part.js:638
-#: templates/js/translated/part.js:723
+#: templates/js/translated/company.js:880 templates/js/translated/part.js:642
+#: templates/js/translated/part.js:727
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:748 templates/js/translated/part.js:826
+#: templates/js/translated/company.js:748 templates/js/translated/part.js:830
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:785 templates/js/translated/part.js:868
+#: templates/js/translated/company.js:785 templates/js/translated/part.js:872
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:786 templates/js/translated/part.js:869
+#: templates/js/translated/company.js:786 templates/js/translated/part.js:873
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:805 templates/js/translated/part.js:886
+#: templates/js/translated/company.js:805 templates/js/translated/part.js:890
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:816 templates/js/translated/part.js:898
+#: templates/js/translated/company.js:816 templates/js/translated/part.js:902
msgid "Delete Parameter"
msgstr ""
@@ -8562,7 +8598,7 @@ msgid "Labels sent to printer"
msgstr ""
#: templates/js/translated/label.js:60 templates/js/translated/report.js:118
-#: templates/js/translated/stock.js:1074
+#: templates/js/translated/stock.js:1078
msgid "Select Stock Items"
msgstr ""
@@ -8872,7 +8908,7 @@ msgstr ""
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140
+#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
@@ -8896,7 +8932,7 @@ msgstr ""
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939
+#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
@@ -8931,7 +8967,7 @@ msgstr ""
#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484
msgid "Unit Price"
msgstr ""
@@ -8941,11 +8977,11 @@ msgid "Total Price"
msgstr ""
#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
-#: templates/js/translated/part.js:1046
+#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092
+#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
@@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation"
msgstr ""
#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
-#: templates/js/translated/stock.js:1598
+#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
@@ -9190,149 +9226,157 @@ msgstr ""
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:318
+#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118
+msgid "Icon (optional) - Explore all available icons on"
+msgstr ""
+
+#: templates/js/translated/part.js:322
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:331
+#: templates/js/translated/part.js:335
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:337
msgid "Any child categories will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:338
msgid "Any parts in this category will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:339
+#: templates/js/translated/part.js:343
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:365
+#: templates/js/translated/part.js:369
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:367
+#: templates/js/translated/part.js:371
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:378
+#: templates/js/translated/part.js:382
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:430
+#: templates/js/translated/part.js:434
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:431
+#: templates/js/translated/part.js:435
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:445
+#: templates/js/translated/part.js:449
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:447
+#: templates/js/translated/part.js:451
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:448
+#: templates/js/translated/part.js:452
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:449
+#: templates/js/translated/part.js:453
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:456
+#: templates/js/translated/part.js:460
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:492
+#: templates/js/translated/part.js:496
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:494
+#: templates/js/translated/part.js:498
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:499
+#: templates/js/translated/part.js:503
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:501
+#: templates/js/translated/part.js:505
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:518
+#: templates/js/translated/part.js:522
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:532
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:531
+#: templates/js/translated/part.js:535
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:556
+#: templates/js/translated/part.js:560
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:626 templates/js/translated/part.js:711
+#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
msgid "Trackable part"
msgstr ""
-#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
+#: templates/js/translated/part.js:634 templates/js/translated/part.js:719
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:642
+#: templates/js/translated/part.js:646
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:646
+#: templates/js/translated/part.js:650
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:774
+#: templates/js/translated/part.js:778
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1162
+#: templates/js/translated/part.js:1166
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1186
+#: templates/js/translated/part.js:1190
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:1292
+#: templates/js/translated/part.js:1296
msgid "Not available"
msgstr ""
-#: templates/js/translated/part.js:1443
+#: templates/js/translated/part.js:1447
msgid "No category"
msgstr ""
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
-#: templates/js/translated/stock.js:2343
+#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
@@ -9356,7 +9400,7 @@ msgstr ""
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
@@ -9364,67 +9408,67 @@ msgstr ""
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1925
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1983
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296
-#: templates/js/translated/stock.js:1556
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
+#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2041
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2063
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2077
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2102
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2159
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2160
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2274
+#: templates/js/translated/part.js:2279
msgid "Current Stock"
msgstr ""
-#: templates/js/translated/part.js:2307
+#: templates/js/translated/part.js:2312
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2333
+#: templates/js/translated/part.js:2338
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2403
+#: templates/js/translated/part.js:2408
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2422
+#: templates/js/translated/part.js:2427
msgid "Single Price Difference"
msgstr ""
@@ -9518,376 +9562,376 @@ msgstr ""
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:140
+#: templates/js/translated/stock.js:144
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:155
+#: templates/js/translated/stock.js:159
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:169
+#: templates/js/translated/stock.js:173
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:171
+#: templates/js/translated/stock.js:175
msgid "Any child locations will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:172
+#: templates/js/translated/stock.js:176
msgid "Any stock items in this location will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:178
+#: templates/js/translated/stock.js:182
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:223
+#: templates/js/translated/stock.js:227
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:262
+#: templates/js/translated/stock.js:266
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:268
+#: templates/js/translated/stock.js:272
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:333
+#: templates/js/translated/stock.js:337
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:353
+#: templates/js/translated/stock.js:357
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:369
+#: templates/js/translated/stock.js:373
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:374
+#: templates/js/translated/stock.js:378
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:395
+#: templates/js/translated/stock.js:399
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:445
+#: templates/js/translated/stock.js:449
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:462
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:483
+#: templates/js/translated/stock.js:487
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488
+#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:508
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:524
+#: templates/js/translated/stock.js:528
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:533
+#: templates/js/translated/stock.js:537
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:656
+#: templates/js/translated/stock.js:660
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:657
+#: templates/js/translated/stock.js:661
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:734
+#: templates/js/translated/stock.js:738
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:735
+#: templates/js/translated/stock.js:739
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:737
+#: templates/js/translated/stock.js:741
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:738
+#: templates/js/translated/stock.js:742
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:824
+#: templates/js/translated/stock.js:828
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:825
+#: templates/js/translated/stock.js:829
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:920
+#: templates/js/translated/stock.js:924
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:921
+#: templates/js/translated/stock.js:925
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:927
+#: templates/js/translated/stock.js:931
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:928
+#: templates/js/translated/stock.js:932
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:932
+#: templates/js/translated/stock.js:936
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:933
+#: templates/js/translated/stock.js:937
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:937
+#: templates/js/translated/stock.js:941
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:938 users/models.py:216
+#: templates/js/translated/stock.js:942 users/models.py:216
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:942
+#: templates/js/translated/stock.js:946
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1075
+#: templates/js/translated/stock.js:1079
msgid "You must select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1098
+#: templates/js/translated/stock.js:1102
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1234
+#: templates/js/translated/stock.js:1238
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1236
+#: templates/js/translated/stock.js:1240
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1241
+#: templates/js/translated/stock.js:1245
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1288
+#: templates/js/translated/stock.js:1292
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1291
+#: templates/js/translated/stock.js:1295
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1317
+#: templates/js/translated/stock.js:1321
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1374
+#: templates/js/translated/stock.js:1378
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1539
+#: templates/js/translated/stock.js:1543
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1561
+#: templates/js/translated/stock.js:1565
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1590
+#: templates/js/translated/stock.js:1594
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1594
+#: templates/js/translated/stock.js:1598
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1602
+#: templates/js/translated/stock.js:1606
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1608
+#: templates/js/translated/stock.js:1612
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1775
+#: templates/js/translated/stock.js:1779
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1780
+#: templates/js/translated/stock.js:1784
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1783
+#: templates/js/translated/stock.js:1787
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1786
+#: templates/js/translated/stock.js:1790
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1788
+#: templates/js/translated/stock.js:1792
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1790
+#: templates/js/translated/stock.js:1794
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1793
+#: templates/js/translated/stock.js:1797
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1797
+#: templates/js/translated/stock.js:1801
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1799
+#: templates/js/translated/stock.js:1803
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1806
+#: templates/js/translated/stock.js:1810
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1808
+#: templates/js/translated/stock.js:1812
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1810
+#: templates/js/translated/stock.js:1814
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1814
+#: templates/js/translated/stock.js:1818
#: templates/js/translated/table_filters.js:196
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:1869
msgid "Stocktake"
msgstr ""
-#: templates/js/translated/stock.js:1944
+#: templates/js/translated/stock.js:1948
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/stock.js:1986
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2155
+#: templates/js/translated/stock.js:2159
msgid "Set Stock Status"
msgstr ""
-#: templates/js/translated/stock.js:2169
+#: templates/js/translated/stock.js:2173
msgid "Select Status Code"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2174
msgid "Status code must be selected"
msgstr ""
-#: templates/js/translated/stock.js:2400
+#: templates/js/translated/stock.js:2404
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2484
+#: templates/js/translated/stock.js:2493
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2500
+#: templates/js/translated/stock.js:2509
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2522
+#: templates/js/translated/stock.js:2531
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2541
+#: templates/js/translated/stock.js:2550
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2560
+#: templates/js/translated/stock.js:2569
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2578
+#: templates/js/translated/stock.js:2587
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2601
+#: templates/js/translated/stock.js:2610
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2609
+#: templates/js/translated/stock.js:2618
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2685
+#: templates/js/translated/stock.js:2694
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772
+#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2785
+#: templates/js/translated/stock.js:2794
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2806
+#: templates/js/translated/stock.js:2815
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2807
+#: templates/js/translated/stock.js:2816
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2809
+#: templates/js/translated/stock.js:2818
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2810
+#: templates/js/translated/stock.js:2819
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2811
+#: templates/js/translated/stock.js:2820
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2812
+#: templates/js/translated/stock.js:2821
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2825
+#: templates/js/translated/stock.js:2834
msgid "Select part to install"
msgstr ""
diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po
index f1b3fef13f..0b12112c6f 100644
--- a/InvenTree/locale/fa/LC_MESSAGES/django.po
+++ b/InvenTree/locale/fa/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:38\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Language: fa_IR\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po
index 77912466e8..8d151a61af 100644
--- a/InvenTree/locale/fr/LC_MESSAGES/django.po
+++ b/InvenTree/locale/fr/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:38\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -40,10 +40,10 @@ msgstr "Entrer la date"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Notes"
@@ -211,11 +211,11 @@ msgstr "Sélectionnez un fichier à joindre"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Lien"
@@ -235,8 +235,8 @@ msgstr "Commentaire du fichier"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Choix invalide"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Choix invalide"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Nom"
@@ -297,19 +297,20 @@ msgstr "Nom"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Description"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "parent"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Chemin d'accès"
@@ -335,7 +336,7 @@ msgstr "Erreur serveur"
msgid "An error has been logged by the server."
msgstr "Une erreur a été enregistrée par le serveur."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Doit être un nombre valide"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Retourné"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Expédié"
@@ -728,7 +729,7 @@ msgstr "Choix invalide pour la fabrication parente"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Ordre de Fabrication"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Référence de l' Ordre de Fabrication"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Référence"
@@ -762,7 +763,7 @@ msgstr "Référence"
msgid "Brief description of the build"
msgstr "Brève description de la fabrication"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Fabrication parente"
@@ -771,13 +772,13 @@ msgstr "Fabrication parente"
msgid "BuildOrder to which this build is allocated"
msgstr "BuildOrder associé a cette fabrication"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "BuildOrder associé a cette fabrication"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Commande de vente à laquelle cette construction est allouée"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Emplacement d'origine"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Code de statut de construction"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Code de lot"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Code de lot pour ce build output"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Date de création"
@@ -884,7 +885,7 @@ 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:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Date d'achèvement"
@@ -892,7 +893,7 @@ msgstr "Date d'achèvement"
msgid "completed by"
msgstr "achevé par"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Émis par"
@@ -900,12 +901,12 @@ msgstr "Émis par"
msgid "User who issued this build order"
msgstr "Utilisateur ayant émis cette commande de construction"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Responsable"
@@ -972,7 +973,7 @@ 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:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Assemblage"
@@ -986,11 +987,11 @@ msgstr "Construction à laquelle allouer des pièces"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Stock d'origine de l'article"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Stock d'origine de l'article"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Stock de destination de l'article"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr "Sortie d'assemblage"
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce"
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Numéros de série"
@@ -1120,10 +1121,10 @@ msgstr "Une liste d'ordre de production doit être fourni"
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Emplacement"
msgid "Location for completed build outputs"
msgstr "Emplacement des ordres de production achevés"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "État"
@@ -1196,7 +1197,7 @@ msgstr "Accepter les non-alloués"
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:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "Le stock requis n'a pas encore été totalement alloué"
@@ -1208,7 +1209,7 @@ msgstr "Accepter les incomplèts"
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:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "La quantité nécessaire n'a pas encore été complétée"
@@ -1216,8 +1217,8 @@ msgstr "La quantité nécessaire n'a pas encore été complétée"
msgid "Build order has incomplete outputs"
msgstr "L'ordre de production a des sorties incomplètes"
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Article de la nomenclature"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Annuler l'assemblage"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Supprimer l'assemblage"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Compléter l'assemblage"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Description de la construction"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
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:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr "Cet ordre de construction est allouée à la commande de vente %(link)s"
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr "Cet ordre de construction est un enfant de l'ordre de construction %(link)s"
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
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:120
+#: build/templates/build/build_base.html:123
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:125
+#: build/templates/build/build_base.html:128
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:130
+#: build/templates/build/build_base.html:133
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:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Date Cible"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr "Cette construction était due le %(target)s"
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr "Cette construction était due le %(target)s"
msgid "Overdue"
msgstr "En retard"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Terminé"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Terminé"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Commandes"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Émis par"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Supprimer l'ordre de construction"
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Destination"
@@ -1447,7 +1452,7 @@ msgstr "Pièces allouées"
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Lot"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Créé le"
@@ -1479,7 +1484,7 @@ msgstr "Commandes filles"
msgid "Allocate Stock to Build"
msgstr "Allouer le stock à la commande"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Désallouer le stock"
@@ -1510,7 +1515,7 @@ msgstr "Commander les pièces requises"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Commander des pièces"
@@ -1582,7 +1587,7 @@ msgstr "Sorties de Construction terminées"
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr "Allocation terminée"
msgid "All untracked stock items have been allocated"
msgstr "Tous les articles de stock non suivis ont été alloués"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Nouvel ordre de construction"
@@ -1845,7 +1850,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Modèle"
msgid "Parts are templates by default"
msgstr "Les pièces sont des templates par défaut"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Prix"
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr "Sélectionner un fabricant"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr "Valeur"
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "coût de base"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr "Commande multiple"
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Créer une commande d'achat"
@@ -3069,7 +3074,7 @@ msgstr "Télécharger l'image depuis l'URL"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Nouvelle commande achat"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Nouvelle commande de vente"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr "Stock affecté"
@@ -3206,7 +3211,7 @@ msgstr "Fabricants"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Fournisseurs"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Supprimer"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Paramètres"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Commander un composant"
@@ -3358,7 +3363,7 @@ msgstr "Information sur les prix"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr "Nom de l’expédition"
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr "Commande"
@@ -3683,7 +3687,7 @@ msgstr "Commande"
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr "Pièce fournisseur"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr "Entrez les numéros de série pour les articles de stock entrants"
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr "Articles de la commande d'achat"
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr "Expéditions en attente"
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "En Commande"
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Catégorie de composant"
@@ -4352,7 +4352,7 @@ msgstr "Catégories de composants"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Composantes"
@@ -4382,7 +4382,7 @@ msgstr "Le numéro de série le plus récent est"
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Catégorie"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr "Ventes multiples"
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr "Nom de test"
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr "Requis"
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr "Données"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "ID de composant"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Surplus"
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Actualiser"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr ""
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Fabricants de composants"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr "Afficher le prix de vente"
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Numéro de série"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr "Résultat"
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Quantité requise"
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr "Données de la rangée"
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr "Télécharger le template de la BOM"
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr "Sélectionner un format de fichier"
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
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:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr "Prochain numéro de série disponible"
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr "Dernier numéro de série"
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "La BOM contient des pièces traçables"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
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:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr "Commander des stocks"
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr "Pas d'informations sur l'utilisateur"
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Référence de commande"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Commandé"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr "Commande en retard"
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr "Livré au client"
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr "Allouer des numéros de série"
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Acheter du stock"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Calculer le prix"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr "Allouer des numéros de série"
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr "Stock bas"
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Aucune pièce trouvée"
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr "Aucune catégorie"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Afficher sous forme de liste"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Afficher sous forme de grille"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Afficher sous forme d'arborescence"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr "Modifier le résultat du test"
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr "Supprimer le résultat du test"
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr "Aucun résultat correspondant n'a été trouvé"
msgid "Hide/Show pagination"
msgstr "Masquer/Afficher la pagination"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Actualiser"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po
index ee92ef3a0d..cd9d63a2f2 100644
--- a/InvenTree/locale/he/LC_MESSAGES/django.po
+++ b/InvenTree/locale/he/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -40,10 +40,10 @@ msgstr "הזן תאריך סיום"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr "בחר קובץ לצירוף"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "קישור"
@@ -235,8 +235,8 @@ msgstr "הערת קובץ"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "בחירה שגויה"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "בחירה שגויה"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "שם"
@@ -297,19 +297,20 @@ msgstr "שם"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "תיאור"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "מקור"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "המספר חייב להיות תקין"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "הוחזר"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "נשלח"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "מקט"
@@ -762,7 +763,7 @@ msgstr "מקט"
msgid "Brief description of the build"
msgstr "תיאור קצר אודות הבנייה"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "מקור הבנייה"
@@ -771,13 +772,13 @@ msgstr "מקור הבנייה"
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "מספרים סידוריים"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po
index 5b359bb46c..0ea3d9e3e2 100644
--- a/InvenTree/locale/hu/LC_MESSAGES/django.po
+++ b/InvenTree/locale/hu/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
@@ -40,10 +40,10 @@ msgstr "Dátum megadása"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Megjegyzések"
@@ -211,11 +211,11 @@ msgstr "Válaszd ki a mellekelni kívánt fájlt"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Link"
@@ -235,8 +235,8 @@ msgstr "Leírás, bővebb infó"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Érvénytelen választás"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Érvénytelen választás"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Név"
@@ -297,19 +297,20 @@ msgstr "Név"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Leírás"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "szülő"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Elérési út"
@@ -335,7 +336,7 @@ msgstr "Kiszolgálóhiba"
msgid "An error has been logged by the server."
msgstr "A kiszolgáló egy hibaüzenetet rögzített."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Érvényes számnak kell lennie"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Visszaküldve"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Kiszállítva"
@@ -728,7 +729,7 @@ msgstr "Hibás választás a szülő gyártásra"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Gyártási utasítás"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Gyártási utasítás azonosító"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Azonosító"
@@ -762,7 +763,7 @@ msgstr "Azonosító"
msgid "Brief description of the build"
msgstr "Gyártás rövid leírása"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Szülő gyártás"
@@ -771,13 +772,13 @@ msgstr "Szülő gyártás"
msgid "BuildOrder to which this build is allocated"
msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ 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:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Forrás hely"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Gyártás státusz kód"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Batch kód"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Batch kód a gyártás kimenetéhez"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Létrehozás dátuma"
@@ -884,7 +885,7 @@ 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:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Elkészítés dátuma"
@@ -892,7 +893,7 @@ msgstr "Elkészítés dátuma"
msgid "completed by"
msgstr "elkészítette"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Kiállította"
@@ -900,12 +901,12 @@ msgstr "Kiállította"
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:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Felelős"
@@ -972,7 +973,7 @@ 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:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Gyártás"
@@ -986,11 +987,11 @@ msgstr "Gyártás amihez készletet foglaljunk"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Forrás készlet tétel"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Forrás készlet tétel"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Cél készlet tétel"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr "Gyártás kimenet"
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
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:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Sorozatszámok"
@@ -1120,10 +1121,10 @@ msgstr "A gyártási kimenetek listáját meg kell adni"
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Hely"
msgid "Location for completed build outputs"
msgstr "A kész gyártási kimenetek helye"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Állapot"
@@ -1197,7 +1198,7 @@ msgstr "Kiosztatlanok elfogadása"
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:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "A szükséges készlet nem lett teljesen lefoglalva"
@@ -1209,7 +1210,7 @@ msgstr "Befejezetlenek elfogadása"
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:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "Szükséges gyártási mennyiség nem lett elérve"
@@ -1217,8 +1218,8 @@ msgstr "Szükséges gyártási mennyiség nem lett elérve"
msgid "Build order has incomplete outputs"
msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz"
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Alkatrészjegyzék tétel"
@@ -1323,66 +1324,70 @@ msgid "Cancel Build"
msgstr "Gyártás törlése"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Gyártás törlése"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Gyártás befejezése"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Gyártás leírása"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
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:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr "Ez a gyártási utasítás hozzátendelve a %(link)s vevői rendeléshez"
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr "Ez gyártási utasítás a %(link)s gyártási utasítás gyermeke"
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
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:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr "Befejezetlen gyártási kimenetek vannak"
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
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:130
+#: build/templates/build/build_base.html:133
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:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Cél dátum"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, 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:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1391,14 +1396,14 @@ msgstr "Ez a gyártás %(target)s-n volt esedékes"
msgid "Overdue"
msgstr "Késésben"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Kész"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1407,17 +1412,17 @@ msgstr "Kész"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Vevői rendelés"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Kiállította"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Gyártási utasítás törlése"
@@ -1434,7 +1439,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Cél"
@@ -1448,7 +1453,7 @@ msgstr "Lefoglalt alkatrészek"
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1460,7 +1465,7 @@ msgstr "Batch"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Létrehozva"
@@ -1480,7 +1485,7 @@ msgstr "Alárendelt gyártások"
msgid "Allocate Stock to Build"
msgstr "Készlet foglalása gyártáshoz"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Készlet felszabadítása"
@@ -1511,7 +1516,7 @@ msgstr "Szükséges alkatrészek rendelése"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Alkatrész rendelés"
@@ -1583,7 +1588,7 @@ msgstr "Befejezett gyártási kimenetek"
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1601,7 +1606,7 @@ msgstr "Lefoglalás kész"
msgid "All untracked stock items have been allocated"
msgstr "Az összes nem követett készlet lefoglalásra került"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Új gyártási utasítás"
@@ -1846,7 +1851,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1856,7 +1861,7 @@ msgstr "Sablon"
msgid "Parts are templates by default"
msgstr "Alkatrészek alapból sablon alkatrészek legyenek"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2592,7 +2597,7 @@ msgstr "Árlépcső mennyiség"
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Ár"
@@ -2831,7 +2836,7 @@ msgstr "Cég által használt alapértelmezett pénznem"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Kiindulási alkatrész"
@@ -2860,7 +2865,7 @@ msgstr "Gyártó kiválasztása"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr "MPN"
@@ -2900,7 +2905,7 @@ msgstr "Érték"
msgid "Parameter value"
msgstr "Paraméter értéke"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2922,7 +2927,7 @@ msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészr
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2934,7 +2939,7 @@ msgstr "Beszállító kiválasztása"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr "SKU"
@@ -2956,17 +2961,17 @@ msgid "Supplier part description"
msgstr "Beszállítói alkatrész leírása"
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Megjegyzés"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "alap költség"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimális díj (pl. tárolási díj)"
@@ -2980,7 +2985,7 @@ msgstr "Csomagolás"
msgid "Part packaging"
msgstr "Alkatrész csomagolás"
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "többszörös"
@@ -2991,8 +2996,8 @@ msgstr "Többszörös rendelés"
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3029,7 +3034,7 @@ msgid "Company"
msgstr "Cég"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Beszerzési rendelés létrehozása"
@@ -3070,7 +3075,7 @@ msgstr "Kép letöltése URL-ről"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3106,7 +3111,7 @@ msgstr "Új beszállítói alkatrész létrehozása"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Új beszállítói alkatrész"
@@ -3135,7 +3140,7 @@ msgstr "Gyártói alkatrészek"
msgid "Create new manufacturer part"
msgstr "Új gyártói alkatrész létrehozása"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Új gyártói alkatrész"
@@ -3149,7 +3154,7 @@ msgstr "Beszállítói készlet"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3172,7 +3177,7 @@ msgstr "Új beszerzési rendelés"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3191,7 +3196,7 @@ msgid "New Sales Order"
msgstr "Új vevői rendelés"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr "Hozzárendelt készlet"
@@ -3207,7 +3212,7 @@ msgstr "Gyártók"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Alkatrész rendelés"
@@ -3238,13 +3243,13 @@ msgid "Suppliers"
msgstr "Beszállítók"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3253,12 +3258,12 @@ msgstr "Törlés"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Paraméterek"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3269,7 +3274,7 @@ msgid "Delete parameters"
msgstr "Paraméterek törlése"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Paraméter hozzáadása"
@@ -3292,7 +3297,7 @@ msgstr "Hozzárendelt készlet tételek"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Beszállítói alkatrész"
@@ -3304,7 +3309,7 @@ msgstr "Beszállítói alkatrész műveletek"
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Alkatrész rendelése"
@@ -3359,7 +3364,7 @@ msgstr "Árinformációk"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr "Árlépcső hozzáadása"
@@ -3368,12 +3373,12 @@ msgid "No price break information found"
msgstr "Nincs árlépcső információ"
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr "Árlépcső törlése"
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr "Árlépcső szerkesztése"
@@ -3399,10 +3404,9 @@ msgstr "Alkatrész elérhetőség frissítése"
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Készlet"
@@ -3555,7 +3559,7 @@ msgid "Company from which the items are being ordered"
msgstr "Cég akitől a tételek beszerzésre kerülnek"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr "Beszállítói azonosító"
@@ -3612,7 +3616,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr "Cél dátum a rendelés teljesítéséhez. Ez után számít majd késettnek."
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr "Kiszállítás dátuma"
@@ -3674,7 +3678,7 @@ msgstr "törölve"
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr "Rendelés"
@@ -3684,7 +3688,7 @@ msgstr "Rendelés"
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3695,7 +3699,7 @@ msgid "Supplier part"
msgstr "Beszállítói alkatrész"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3881,11 +3885,11 @@ msgstr "Sortétel nem egyezik a beszerzési megrendeléssel"
msgid "Select destination location for received items"
msgstr "Válassz cél helyet a beérkezett tételeknek"
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr "Írd be a batch kódját a beérkezett tételeknek"
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr "Írd be a sorozatszámokat a beérkezett tételekhez"
@@ -4062,10 +4066,6 @@ msgstr "Teljes költség"
msgid "Total cost could not be calculated"
msgstr "A teljes költség nem számolható"
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Beszerzési rendelés szerkesztése"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4092,10 +4092,10 @@ msgstr "Beszállítói alkatrész kiválasztása"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4131,7 +4131,7 @@ msgstr "Beszerzési rendelés tételei"
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr "Sortétel hozzáadása"
@@ -4177,7 +4177,7 @@ msgid "Print packing list"
msgstr "Csomagolási lista nyomtatása"
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr "Szállítmányok készen"
@@ -4191,7 +4191,7 @@ 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:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr "Vevői azonosító"
@@ -4215,8 +4215,8 @@ msgid "Pending Shipments"
msgstr "Függő szállítmányok"
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "Műveletek"
@@ -4258,35 +4258,35 @@ msgstr "Kimenő vevői rendelés"
msgid "Stock produced by Build Order"
msgstr "Gyártással előállított készlet"
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr "A gyártási utasításhoz szükséges készlet"
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr "Érvényes"
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr "Teljes alkatrészjegyzék jóváhagyása"
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr "Ennek az opciónak ki kll lennie választva"
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr "Nullánál nagyobb kell legyen"
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr "Érvényes mennyiségnek kell lennie"
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr "Hely megadása a kezdeti alkarész készlethez"
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr "Ez a mező kötelező"
@@ -4300,14 +4300,14 @@ msgid "Total Stock"
msgstr "Teljes készlet"
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Elérhető készlet"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "Rendelve"
@@ -4336,7 +4336,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Alkatrész kategória"
@@ -4353,7 +4353,7 @@ msgstr "Alkatrész kategóriák"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Alkatrészek"
@@ -4383,7 +4383,7 @@ msgstr "A legutóbbi sorozatszám"
msgid "Duplicate IPN not allowed in part settings"
msgstr "Azonos IPN nem engedélyezett az alkatrész beállításokban"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Alkatrész neve"
@@ -4416,11 +4416,11 @@ msgstr "Kulcsszavak"
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:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Kategória"
@@ -4531,245 +4531,245 @@ msgstr "Alkatrészjegyzék ellenőrzési dátuma"
msgid "Creation User"
msgstr "Létrehozó"
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr "Több értékesítése"
-#: part/models.py:2265
+#: part/models.py:2312
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:2282
+#: part/models.py:2329
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:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr "Teszt név"
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr "Add meg a teszt nevét"
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr "Teszt leírása"
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr "Adj hozzá egy leírást ehhez a teszthez"
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr "Kötelező"
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr "Szükséges-e hogy ez a teszt sikeres legyen?"
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr "Kötelező érték"
-#: part/models.py:2321
+#: part/models.py:2368
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:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr "Kötelező melléklet"
-#: part/models.py:2327
+#: part/models.py:2374
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:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr "Érvénytelen karakter ({c}) a sablon nevében"
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr "A paraméter sablon nevének egyedinek kell lennie"
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr "Paraméter neve"
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr "Paraméter mértékegysége"
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr "Szülő alkatrész"
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "Paraméter sablon"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr "Adat"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr "Paraméter értéke"
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr "Alapértelmezett érték"
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr "Alapértelmezett paraméter érték"
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr "Alkatrész ID vagy alkatrész név"
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "Alkatrész ID"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr "Egyedi alkatrész ID értéke"
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr "Alkatrész neve"
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr "Alkatrész IPN"
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr "Alkatrész IPN érték"
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr "Szint"
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr "Alkatrészjegyzék szint"
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr "Szülő alkatrész kiválasztása"
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr "Al alkatrész"
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt"
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez"
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr "Opcionális"
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr "Ez az alkatrészjegyzék tétel opcionális"
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr "Többlet"
-#: part/models.py:2614
+#: part/models.py:2661
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:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr "Alkatrészjegyzék tétel azonosító"
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr "Alkatrészjegyzék tétel megjegyzései"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr "Ellenőrző összeg"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr "Alkatrészjegyzék sor ellenőrző összeg"
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr "Örökölt"
-#: part/models.py:2627
+#: part/models.py:2674
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:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Változatok"
-#: part/models.py:2633
+#: part/models.py:2680
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:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
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:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr "Al alkatrészt kötelező megadni"
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr "Alkatrészjegyzék tétel helyettesítő"
-#: part/models.py:2848
+#: part/models.py:2895
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:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr "Szülő alkatrészjegyzék tétel"
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr "Helyettesítő alkatrész"
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr "1.rész"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr "2.rész"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr "Válassz kapcsolódó alkatrészt"
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr "Alkatrész kapcsolat nem hozható létre önmagával"
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr "Már létezik duplikált alkatrész kapcsolat"
@@ -4877,7 +4877,7 @@ msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzéket utoljár
msgid "The BOM for %(part)s has not been validated."
msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzék még nincs jóváhagyva."
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr "Alkatrészjegyzék műveletek"
@@ -4946,8 +4946,8 @@ msgstr "Alkatrész létrehozása"
msgid "New Part"
msgstr "Új alkatrész"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Opciók"
@@ -5015,138 +5015,146 @@ msgstr "%(full_name)s - %(desc)s (%(match_per)s%% egyezik)"
msgid "Part Stock"
msgstr "Alkatrész készlet"
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Frissítés"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr "Alkatrész teszt sablonok"
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr "Teszt sablon hozzáadása"
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr "Vevői rendeléshez foglalások"
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr "Alkatrész megjegyzések"
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr "Alkatrész változatok"
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr "Új változat létrehozása"
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr "Új változat"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr "Paraméter hozzáadása"
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr "Kapcsolódó alkatrészek"
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr "Kapcsolódó hozzáadása"
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "Alkatrészjegyzék"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr "Exportálási műveletek"
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr "Alkatrészjegyzék exportálása"
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr "Alkatrészjegyzék riport nyomtatása"
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr "Alkatrészjegyzék feltöltése"
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr "Alkatrészjegyzék másolása"
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr "Alkatrészjegyzék jóváhagyása"
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr "Új alkatrészjegyzék tétel"
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr "Alkatrészjegyzék tétel hozzáadása"
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr "Gyártmányok"
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr "Alkatrész gyártások"
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr "Gyártáshoz foglalások"
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Alkatrész beszállítók"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Alkatrész gyártók"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr "Gyártói alkatrészek törlése"
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr "Alkatrészjegyzék tétel létrehozása"
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr "Kapcsolódó alkatrész"
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr "Kapcsolódó alkatrész hozzáadása"
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr "Teszt eredmény sablon hozzáadása"
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr "Beszerzési egységár - %(currency)s"
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr "Egységár-önköltség különbség - %(currency)s"
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr "Beszállítói egység költség - %(currency)s"
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr "Egységár - %(currency)s"
@@ -5322,13 +5330,13 @@ msgstr "Gyártáshoz lefoglalva"
msgid "Allocated to Sales Orders"
msgstr "Vevő rendeléshez lefoglalva"
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr "Gyártható"
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr "Gyártásban"
@@ -5380,7 +5388,7 @@ msgid "Total Cost"
msgstr "Teljes költség"
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr "Nincs beszállítói árinfomáció"
@@ -5415,6 +5423,18 @@ msgstr "Belső ár"
msgid "No pricing information is available for this part."
msgstr "Az alkatrészhez nem áll rendelkezésre árinformáció."
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr "Dátum"
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr "Változatok"
@@ -5463,7 +5483,7 @@ msgstr "Eladási ár megjelenítése"
msgid "Calculation parameters"
msgstr "Számítási paraméterek"
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr "Beszállítói költség"
@@ -5502,7 +5522,7 @@ msgid "No sale pice history available for this part."
msgstr "Az alkatrészhez nem áll rendelkezésre eladási ártörténet."
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "Nincs készlet"
@@ -5894,11 +5914,11 @@ msgstr "Készlet tétel teszt riport"
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Sorozatszám"
@@ -5916,13 +5936,6 @@ msgstr "Teszt"
msgid "Result"
msgstr "Eredmény"
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr "Dátum"
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr "Sikeres"
@@ -6520,7 +6533,7 @@ msgid "Available Quantity"
msgstr "Elérhető mennyiség"
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Nincs beállítva hely"
@@ -7703,7 +7716,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:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Szükséges mennyiség"
@@ -7717,6 +7730,7 @@ msgid "Click on the following link to view this part"
msgstr "Klikk a következő linkre az alkatrész megjelenítéséhez"
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr "Minimum mennyiség"
@@ -7918,10 +7932,10 @@ msgstr "Sor adatok mutatása"
msgid "Row Data"
msgstr "Sor adat"
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Bezárás"
@@ -7931,12 +7945,12 @@ msgid "Download BOM Template"
msgstr "Alkarészjegyzék sablon letöltése"
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr "Formátum"
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr "Fájlfomátum kiválasztása"
@@ -7992,390 +8006,390 @@ msgstr "Beszállítói adatok megjelenítése az exportált alkatrészjegyzékbe
msgid "Remove substitute part"
msgstr "Helyettesítő alkatrész törlése"
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
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:578
+#: templates/js/translated/bom.js:576
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:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr "Helyettesítő alkatrész törlése"
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr "Helyettesítő hozzáadása"
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr "Alkatrészjegyzék tétel helyettesítők szerkesztése"
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
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:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr "Töröljük a kiválasztott alkatrészjegyzék tételeket?"
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr "BOM betöltése az al-gyártmányhoz"
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr "Vannak helyettesítők"
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr "Készletváltozatok engedélyezve"
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr "Nincs szabad"
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr "Változatokkal és helyettesítőkkel együtt"
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr "Változatokkal együtt"
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr "Helyettesítőkkel együtt"
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr "Helyettesítõk"
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr "Beszerzési ártartomány"
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr "Beszerzési átlagár"
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr "Alkatrészjegyzék megtekintése"
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr "Rendelés allattival együtt"
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr "Alkatrészjegyzék tétel jóváhagyása"
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr "Ez a sor jóvá lett hagyva"
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr "Helyettesítő alkatrészek szerkesztése"
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr "Alkatrészjegyzék tétel szerkesztése"
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr "Alkatrészjegyzék tétel törlése"
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr "Nem találhatók alkatrészjegyzék tételek"
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr "Szükséges alkatrész"
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr "Örökölve a szülő alkatrészjegyzéktől"
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr "Gyártási utasítás szerkesztése"
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr "Gyártási utasítás létrehozása"
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr "Gyártási utasítás törlése"
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
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:148
+#: templates/js/translated/build.js:180
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:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr "Ennek a gyártásnak befejezetlen kimenetei vannak"
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
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:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr "Gyártási utasítás befejezetlen"
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr "Gyártási utasítás befejezése"
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr "Következő szabad sorozatszám"
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr "Legutolsó sorozatszám"
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
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:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr "A gyártási kimeneteket egyesével kell előállítani"
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
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:284
+#: templates/js/translated/build.js:316
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:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr "Gyártási kimenet létrehozása"
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
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:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr "Készlet felszabadítása a gyártási kimenetből"
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr "Gyártási kimenet befejezése"
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr "Gyártási kimenet törlése"
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
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:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr "Készlet tételek felszabadítása"
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr "Gyártási kimenetek kiválasztása"
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
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:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr "Kimenet"
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr "Gyártási kimenetek befejezése"
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr "Gyártási kimenetek törlése"
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr "Nincs gyártási utasításhoz történő foglalás"
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr "Hely nincs megadva"
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr "Nem található aktív gyártási kimenet"
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr "Lefoglalt készlet"
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr "Nincsenek követett BOM tételek ehhez a gyártáshoz"
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr "Befejezett tesztek"
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr "Nincsenek szükséges tesztek ehhez a gyártáshoz"
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr "Készlet foglalások szerkesztése"
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr "Készlet foglalások törlése"
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr "Foglalás szerkesztése"
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr "Foglalás törlése"
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr "Vannak helyettesítő alkatrészek"
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr "Szükséges/db"
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr "Nincs elegendő"
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr "Van elegendő"
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr "Lefoglalva"
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr "Gyártási készlet"
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr "Készlet rendelés"
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr "Lefoglalt készlet"
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Kiválasztott alkatrészek"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
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:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr "Készlet foglalási mennyiség megadása"
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr "Minden alkatrész lefoglalva"
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr "Minden kiválasztott alkatrész teljesen lefoglalva"
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
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:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr "Készlet foglalása a gyártási utasításhoz"
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr "Nincs egyező készlethely"
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr "Nincs egyező készlet"
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr "Automatikus készlet foglalás"
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr "A készlet automatikusan lefoglalásra került ehhez a gyártási utasításhoz, a megadott feltételek szerint"
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, 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:2286
+#: templates/js/translated/build.js:2319
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:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr "Készlet tételek foglalása"
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr "Nincs a lekérdezéssel egyező gyártási utasítás"
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr "Kiválaszt"
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr "Gyártás késésben van"
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr "Haladás"
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr "Nincs felhasználói információ"
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr "Nincs lefoglalt alkatrész ehhez"
@@ -8391,11 +8405,11 @@ msgstr "Gyártói alkatrész hozzáadása"
msgid "Edit Manufacturer Part"
msgstr "Gyártói alkatrész szerkesztése"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Beszállító hozzáadása"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "Beszállítói alkatrész hozzáadása"
@@ -8766,381 +8780,385 @@ msgstr "Nincs olvasatlan értesítés"
msgid "Notifications will load here"
msgstr "Az értesítések itt fognak megjelenni"
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
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/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr "A következő készlet tételek ki lesznek szállítva"
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr "Szállítmány kész"
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr "Szállítmány megerősítése"
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr "Nincs függő szállítmány"
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
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/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr "Kihagyás"
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr "Beszerzési rendelés befejezése"
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr "Rendelés befejezettnek jelölése?"
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr "Minden sortétel megérkezett"
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
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/order.js:299
+#: templates/js/translated/order.js:300
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/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr "Beszerzési rendelés törlése"
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
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/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr "Ezt a beszerzési rendelést nem lehet törölni"
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr "Beszerzési rendelés kiküldése"
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr "A beszerzési rendelés kiküldése után annak sortételei a továbbiakban már nem lesznek szerkeszthetők."
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr "Vevő rendelés törlése"
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
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/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr "Szállítmány létrehozása"
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr "Vevő hozzáadása"
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr "Vevői rendelés létrehozása"
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Beszerzési rendelés szerkesztése"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr "Rendelés exportálása"
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr "Legalább egy beszerezhető alkatrészt ki kell választani"
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr "Rendelendő mennyiség"
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr "Új beszállítói alkatrész"
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr "Új beszerzési rendelés"
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr "Hozzáadás beszerzési rendeléshez"
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr "Nincsenek egyező beszállítói alkatrészek"
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr "Nincsenek egyező beszerzési rendelések"
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr "Sortételek kiválasztása"
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr "Legalább egy sortételt ki kell választani"
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr "Batch kód hozzáadása"
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr "Sorozatszám hozzáadása"
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr "Érkező mennyiség"
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr "Készlet állapota"
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Rendelési kód"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Megrendelve"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr "Érkező mennyiség"
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr "Bevételezés megerősítése"
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr "Beszerzési rendelés tételeinek bevételezése"
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr "Nem található beszerzési rendelés"
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr "Rendelés késésben"
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr "Tételek"
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr "Sortétel másolása"
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr "Sortétel szerkesztése"
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr "Sortétel törlése"
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr "Nem találhatók sortételek"
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr "Összesen"
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "Egységár"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Teljes ár"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr "Ez a sortétel késésben van"
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr "Sortétel bevételezése"
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr "Sortétel másolása"
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr "Sortétel szerkesztése"
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr "Sortétel törlése"
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr "Sor másolása"
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr "Sor szerkesztése"
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr "Sor törlése"
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr "Sor másolása"
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr "Sor szerkesztése"
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr "Sor törlése"
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr "Nincs egyező sor"
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr "Nem található vevői rendelés"
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr "Érvénytelen vevő"
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr "Szállítmány szerkesztése"
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr "Szállítmány kész"
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr "Szállítmány törlése"
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr "Szállítmány szerkesztése"
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr "Szállítmány törlése"
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr "Nincs egyező szállímány"
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr "Szállítmány azonosító"
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr "Nincs kiszállítva"
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr "Nyomkövetés"
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr "Számla"
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr "Szállítmány hozzáadása"
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Készlet foglalás megerősítése"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr "Készlet foglalása a vevői rendeléshez"
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr "Nincs vevői rendeléshez történő foglalás"
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr "Készlet foglalások szerkesztése"
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "Törlési művelet megerősítése"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr "Készlet foglalások törlése"
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr "Vevőnek kiszállítva"
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr "Készlethely nincs megadva"
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr "Sorozatszámok kiosztása"
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Készletrendelés"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Árszámítás"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
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/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr "Nem törölhető mivel tételek vannak lefoglalva"
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr "Sorozatszámok kiosztása"
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr "Egységár módosítása"
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr "Nincs egyező sortétel"
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr "Nincsenek egyező sorok"
@@ -9320,12 +9338,12 @@ msgstr "Alkatrészjegyzék jóvá lett hagyva"
msgid "Copy Bill of Materials"
msgstr "Alkatrészjegyzék másolása"
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr "Alacsony készlet"
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr "Nincs szabad"
@@ -9357,7 +9375,7 @@ msgstr "Alkatrész kapcsolatok törlése"
msgid "Delete Part Relationship"
msgstr "Alkatrész kapcsolatok törlése"
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Nincs alkatrész"
@@ -9369,100 +9387,124 @@ msgstr "Nincs szabad"
msgid "No category"
msgstr "Nincs kategória"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Megjelenítés listaként"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Megjelenítés rácsnézetként"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
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:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "Alkatrész kategória beállítása"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr "Alkatrész kategória kiválasztása"
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr "Kategória megadása kötelező"
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Megjelenítés fában"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr "Alkategóriák betöltése"
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr "Értesítésre beállított kategória"
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr "Nincs a lekérdezéssel egyező teszt sablon"
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr "Teszt eredmény szerkesztése"
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr "Teszt eredmény törlése"
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
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:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr "Teszt eredmény sablon szerkesztése"
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr "Teszt eredmény sablon törlése"
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr "Nincs ${human_name} információ"
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr "${human_name} szerkesztése"
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr "${human_name} törlése"
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
-msgstr "Aktuális készlet"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
+msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr "Az alkatrészhez nem áll rendelkezésre ütemezési információ"
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr "Ütemezett készlet mennyiség"
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr "Egységes ár"
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr "Egységes ár különbség"
@@ -10223,10 +10265,6 @@ msgstr "Nincs egyező eredmény"
msgid "Hide/Show pagination"
msgstr "Lapozó elrejtése/megjelenítése"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Frissítés"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr "Átváltás"
diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po
index ad26b515ea..6baf79a631 100644
--- a/InvenTree/locale/id/LC_MESSAGES/django.po
+++ b/InvenTree/locale/id/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:38\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -40,10 +40,10 @@ msgstr "Masukkan tanggal"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po
index cfea08479a..f4facfda60 100644
--- a/InvenTree/locale/it/LC_MESSAGES/django.po
+++ b/InvenTree/locale/it/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -40,10 +40,10 @@ msgstr "Inserisci la data"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Note"
@@ -211,11 +211,11 @@ msgstr "Seleziona file da allegare"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Collegamento"
@@ -235,8 +235,8 @@ msgstr "Commento del file"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Scelta non valida"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Scelta non valida"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Nome"
@@ -297,19 +297,20 @@ msgstr "Nome"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Descrizione"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "genitore"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Percorso"
@@ -335,7 +336,7 @@ msgstr "Errore del server"
msgid "An error has been logged by the server."
msgstr "Un errore è stato loggato dal server."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Deve essere un numero valido"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Reso"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Spedito"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Ordine di Produzione"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Riferimento"
@@ -762,7 +763,7 @@ msgstr "Riferimento"
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Posizione Di Origine"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Codice Lotto"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Data di creazione"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Data di completamento"
@@ -892,7 +893,7 @@ msgstr "Data di completamento"
msgid "completed by"
msgstr "Completato da"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Rilasciato da"
@@ -900,12 +901,12 @@ msgstr "Rilasciato da"
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Responsabile"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "Articolo in giacenza selezionato non trovato nel BOM"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Produzione"
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Origine giacenza articolo"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Origine giacenza articolo"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Destinazione articolo in giacenza"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Codice Seriale"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Posizione"
msgid "Location for completed build outputs"
msgstr "Posizione per gli output di build completati"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Stato"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Distinta base (Bom)"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Data scadenza"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr "In ritardo"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Completato"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Completato"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Ordini di Vendita"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Inviato da"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Elimina Ordine Build"
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Destinazione"
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Lotto"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Creato"
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr "Ordina articoli richiesti"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Ordine Articoli"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr "Assegnazione Completa"
msgid "All untracked stock items have been allocated"
msgstr "Tutte le giacenze non tracciate sono state assegnate"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr "Gli articoli sono modelli per impostazione predefinita"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Prezzo"
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Articolo di base"
@@ -2859,7 +2864,7 @@ msgstr "Seleziona Produttore"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr "Codice articolo produttore (MPN)"
@@ -2899,7 +2904,7 @@ msgstr "Valore"
msgid "Parameter value"
msgstr "Valore del parametro"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Seleziona fornitore"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr "Descrizione articolo fornitore"
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Nota"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "costo base"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Onere minimo (ad esempio tassa di stoccaggio)"
@@ -2979,7 +2984,7 @@ msgstr "Confezionamento"
msgid "Part packaging"
msgstr "Imballaggio del pezzo"
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "multiplo"
@@ -2990,8 +2995,8 @@ msgstr "Ordine multiplo"
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "Azienda"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Crea ordine d'acquisto"
@@ -3069,7 +3074,7 @@ msgstr "Scarica immagine dall'URL"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Crea nuovo fornitore"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Nuovo fornitore articolo"
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr "Giacenza Fornitore"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr "Produttori"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Articoli ordinati"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Fornitori"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Elimina"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parametri"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "Elimina il parametro"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Aggiungi parametro"
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Articolo Fornitore"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Ordine Articolo"
@@ -3358,7 +3363,7 @@ msgstr "Informazioni Prezzi"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr "Aggiungi riduzione prezzo"
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr "Nessuna informazione di riduzione di prezzo trovata"
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr "Elimina riduzione di prezzo"
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Magazzino"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr "Azienda da cui sono stati ordinati gli articoli"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr "Riferimento fornitore"
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr "Articolo Fornitore"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti"
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Modifica ordine d'acquisto"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Seleziona l'articolo del fornitore"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr "Specifica la posizione per lo stock iniziale"
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr "Giacenze Totali"
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Disponibilità in magazzino"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "Ordinato"
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Categoria Articoli"
@@ -4352,7 +4352,7 @@ msgstr "Categorie Articolo"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Articoli"
@@ -4382,7 +4382,7 @@ msgstr "Il numero di serie più recente è"
msgid "Duplicate IPN not allowed in part settings"
msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Nome articolo"
@@ -4415,11 +4415,11 @@ msgstr "Parole Chiave"
msgid "Part keywords to improve visibility in search results"
msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca"
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Categoria"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr "Descrizione Di Prova"
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "Codice Articolo"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Consenti Le Varianti"
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr "Crea nuovo articolo"
msgid "New Part"
msgstr "Nuovo articolo"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Opzioni"
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Aggiorna"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr ""
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr "Assegnazione Ordine Di Vendita"
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr "Articoli correlati"
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "Distinta base"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Fornitori articoli"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Componenti Produttori"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr "Articoli correlati"
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr "Costo Totale"
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr "Data"
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "Nessuna giacenza"
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr "Data"
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Nessuna posizione impostata"
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Quantità richiesta"
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr "Quantità minima"
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Chiudi"
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr "Formato"
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "La distinta base contiene articoli tracciabili"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr "Posizione non specificata"
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr "Modifica allocazione magazzino"
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr "Elimina posizione giacenza"
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr "Modifica Posizione"
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr "Rimuovi Posizione"
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Seleziona Articoli"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr "Specificare il quantitativo assegnato allo stock"
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
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:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr "Nessuna posizione di magazzino corrispondente"
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Aggiungi fornitore"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "Aggiungi fornitore articolo"
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr "Aggiungi cliente"
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Modifica ordine d'acquisto"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr "Quantità da ricevere"
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr "Stato giacenza"
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Codice ordine"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Ordinato"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr "Totale"
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "Prezzo Unitario"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Prezzo Totale"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr "Cliente non valido"
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Conferma l'assegnazione della giacenza"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr "Nessun ordine di vendita trovato"
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr "Modifica posizione giacenza"
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "Conferma Operazione Eliminazione"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr "Elimina posizione giacenza"
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr "Spedito al cliente"
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr "Nessun posizione specificata"
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Prezzo d'acquisto"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Calcola il prezzo"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr "In esaurimento"
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr "Elimina relazione tra i componenti"
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Nessun articolo trovato"
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr "Nessuna categoria"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Visualizza come elenco"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Visualizza come griglia"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "Imposta categoria articolo"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Visualizza come struttura ad albero"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr "Categoria sottoscritta"
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr "Nessun modello di test corrispondente"
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr "Modificare il risultato del test"
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr "Cancellare il risultato del test"
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr "Modifica ${human_name}"
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr "Elimina ${human_name}"
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr "Prezzo Singolo"
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr "Nessun risultato corrispondente"
msgid "Hide/Show pagination"
msgstr "Mostra/nascondi la paginazione"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Aggiorna"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr "Attiva/disattiva"
diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po
index 4c318fa92f..5fe9bc6344 100644
--- a/InvenTree/locale/ja/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ja/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -40,10 +40,10 @@ msgstr "日付を入力する"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "メモ"
@@ -211,11 +211,11 @@ msgstr "添付ファイルを選択"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "リンク"
@@ -235,8 +235,8 @@ msgstr "ファイルコメント"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "無効な選択です"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "無効な選択です"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "お名前"
@@ -297,19 +297,20 @@ msgstr "お名前"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "説明"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "親"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "有効な数字でなければなりません"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "返品済"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "発送済み"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "作成日時"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr "パーツを割り当てるためにビルドする"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "ステータス"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr "注文必須パーツ"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "パーツの注文"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "テンプレート"
msgid "Parts are templates by default"
msgstr "パーツはデフォルトのテンプレートです"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "新しいサプライヤー・パーツを作成"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "新しいサプライヤー・パーツ"
@@ -3134,7 +3139,7 @@ msgstr "メーカー・パーツ"
msgid "Create new manufacturer part"
msgstr "新しいメーカー・パーツを作成"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "新しいメーカ―・パーツ"
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "パーツの注文"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "パーツ"
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "カテゴリ"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr "新規パーツ"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "在庫切れ"
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr "メーカー・パーツの編集"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po
index b9b1ae40f7..0bab29e48c 100644
--- a/InvenTree/locale/ko/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ko/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr "첨부할 파일을 선택하세요"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "링크"
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "이름"
@@ -297,19 +297,20 @@ msgstr "이름"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "설명"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "유효한 숫자여야 합니다"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "일련번호"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "위치"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "상태"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "회사"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr "URL에서 이미지 다운로드"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "삭제"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr "데이터"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "부품 명세서"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "일련번호"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr "선택"
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "단가"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr "부품 명세서 복사"
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po
index 7bfcedb248..2c6b5341fe 100644
--- a/InvenTree/locale/nl/LC_MESSAGES/django.po
+++ b/InvenTree/locale/nl/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -40,10 +40,10 @@ msgstr "Voer datum in"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Opmerkingen"
@@ -211,11 +211,11 @@ msgstr "Bestand als bijlage selecteren"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Link"
@@ -235,8 +235,8 @@ msgstr "Bestand opmerking"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Ongeldige keuze"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Ongeldige keuze"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Naam"
@@ -297,19 +297,20 @@ msgstr "Naam"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Omschrijving"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "bovenliggende"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Pad"
@@ -335,7 +336,7 @@ msgstr "Serverfout"
msgid "An error has been logged by the server."
msgstr "Er is een fout gelogd door de server."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Moet een geldig nummer zijn"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Retour"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Verzonden"
@@ -728,7 +729,7 @@ msgstr "Ongeldige keuze voor bovenliggende productie"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Productieorder"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Productieorderreferentie"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referentie"
@@ -762,7 +763,7 @@ msgstr "Referentie"
msgid "Brief description of the build"
msgstr "Korte beschrijving van de productie"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Bovenliggende Productie"
@@ -771,13 +772,13 @@ msgstr "Bovenliggende Productie"
msgid "BuildOrder to which this build is allocated"
msgstr "Productieorder waar deze productie aan is toegewezen"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Productieorder waar deze productie aan is toegewezen"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Verkooporder waar deze productie aan is toegewezen"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Bronlocatie"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Productiestatuscode"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Batchcode"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Batchcode voor deze productieuitvoer"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Aanmaakdatum"
@@ -884,7 +885,7 @@ 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:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Opleveringsdatum"
@@ -892,7 +893,7 @@ msgstr "Opleveringsdatum"
msgid "completed by"
msgstr "voltooid door"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Uitgegeven door"
@@ -900,12 +901,12 @@ msgstr "Uitgegeven door"
msgid "User who issued this build order"
msgstr "Gebruiker die de productieorder heeft gegeven"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Verantwoordelijke"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "Geselecteerd voorraadartikel niet gevonden in stuklijst"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Product"
@@ -986,11 +987,11 @@ msgstr "Product om onderdelen toe te wijzen"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Bron voorraadartikel"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Bron voorraadartikel"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Bestemming voorraadartikel"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr "Productieuitvoer"
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat"
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Serienummers"
@@ -1120,10 +1121,10 @@ msgstr "Een lijst van productieuitvoeren moet worden verstrekt"
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Locatie"
msgid "Location for completed build outputs"
msgstr "Locatie van voltooide productieuitvoeren"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Status"
@@ -1196,7 +1197,7 @@ msgstr "Accepteer Niet-toegewezen"
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:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "Vereiste voorraad is niet volledig toegewezen"
@@ -1208,7 +1209,7 @@ msgstr "Accepteer Onvolledig"
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:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "Vereiste productiehoeveelheid is voltooid"
@@ -1216,8 +1217,8 @@ msgstr "Vereiste productiehoeveelheid is voltooid"
msgid "Build order has incomplete outputs"
msgstr "Productieorder heeft onvolledige uitvoeren"
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Stuklijstartikel"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Annuleer Productie"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Verwijder Productie"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Voltooi Productie"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Productiebeschrijving"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
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:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr "Deze Productieorder is toegewezen aan verkooporder %(link)s"
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr "Deze Productieorder is een onderdeel van Productieorder %(link)s"
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr "Productieorder is gereed om te markeren als voltooid"
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
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:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr "Vereiste Producthoeveelheid is nog niet bereikt"
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
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:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Streefdatum"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr "Deze productie was verwacht op %(target)s"
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr "Deze productie was verwacht op %(target)s"
msgid "Overdue"
msgstr "Achterstallig"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Voltooid"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Voltooid"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Verkooporder"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Uitgegeven door"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Verwijder Productieorder"
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Bestemming"
@@ -1447,7 +1452,7 @@ msgstr "Toegewezen Onderdelen"
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Batch"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Gecreëerd"
@@ -1479,7 +1484,7 @@ msgstr "Onderliggende Productieorders"
msgid "Allocate Stock to Build"
msgstr "Voorraad toewijzen aan Product"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Voorraadtoewijzing ongedaan maken"
@@ -1510,7 +1515,7 @@ msgstr "Vereiste onderdelen bestellen"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Onderdelen bestellen"
@@ -1582,7 +1587,7 @@ msgstr "Voltooide Productieuitvoeren"
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr "Toewijzing Voltooid"
msgid "All untracked stock items have been allocated"
msgstr "Alle niet gevolgde voorraadartikelen zijn toegewezen"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Nieuwe Productieorder"
@@ -1845,7 +1850,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Sjabloon"
msgid "Parts are templates by default"
msgstr "Onderdelen zijn standaard sjablonen"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Prijs"
@@ -2830,7 +2835,7 @@ msgstr "Standaardvaluta die gebruikt wordt voor dit bedrijf"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Basis onderdeel"
@@ -2859,7 +2864,7 @@ msgstr "Fabrikant selecteren"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr "MPN"
@@ -2899,7 +2904,7 @@ msgstr "Waarde"
msgid "Parameter value"
msgstr "Parameterwaarde"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderd
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Leverancier selecteren"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr "SKU"
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Opmerking"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "basisprijs"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimale kosten (bijv. voorraadkosten)"
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "meerdere"
@@ -2990,8 +2995,8 @@ msgstr "Order meerdere"
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "Bedrijf"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Inkooporder aanmaken"
@@ -3069,7 +3074,7 @@ msgstr "Afbeelding downloaden van URL"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr "Fabrikant onderdelen"
msgid "Create new manufacturer part"
msgstr "Maak nieuw fabrikant onderdeel"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Nieuw fabrikant onderdeel"
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Nieuwe Inkooporder"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Nieuwe Verkooporder"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr "Fabrikanten"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Order onderdeel"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Leveranciers"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Verwijderen"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parameters"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "Parameter verwijderen"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Parameter toevoegen"
@@ -3291,7 +3296,7 @@ msgstr "Toegewezen Voorraadartikelen"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Leveranciersonderdeel"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Order Onderdeel"
@@ -3358,7 +3363,7 @@ msgstr "Prijsinformatie"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Voorraad"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr "Bedrijf waar de artikelen van worden besteld"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr "Leveranciersreferentie"
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr "Streefdatum voor voltooien order. De order is na deze datum achterstallig."
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr "Verzenddatum"
@@ -3673,7 +3677,7 @@ msgstr "verwijderd"
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr "Order"
@@ -3683,7 +3687,7 @@ msgstr "Order"
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr "Leveranciersonderdeel"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr "Artikelregel komt niet overeen met inkooporder"
msgid "Select destination location for received items"
msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen"
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr "Voer serienummers in voor inkomende voorraadartikelen"
@@ -4061,10 +4065,6 @@ msgstr "Totale kosten"
msgid "Total cost could not be calculated"
msgstr "Totale kosten konden niet worden berekend"
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Bewerk Inkooporder"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Selecteer Leveranciersonderdeel"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr "Inkooporder Artikelen"
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr "Artikel toevoegen"
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr "Pakbon afdrukken"
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr "Verzendingen Voltooien"
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr "Deze Verkooporder is niet volledig toegewezen"
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr "Klantreferentie"
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr "Verzendingen in behandeling"
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "Acties"
@@ -4257,35 +4257,35 @@ msgstr "Uitgaande Verkooporder"
msgid "Stock produced by Build Order"
msgstr "Geproduceerde voorraad door Productieorder"
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr "Voorraad vereist voor Productieorder"
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr "Totale Voorraad"
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Beschikbare Voorraad"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "In bestelling"
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr "De template van de parameter moet uniek zijn"
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr "Parameternaam"
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr "Parameter Eenheden"
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "Parameter Template"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr "Parameterwaarde"
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr "Standaard Parameter Waarde"
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr "Verkoopordertoewijzingen"
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr "Een parameter toevoegen"
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr "Nieuw Stuklijstartikel"
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr "Assemblages"
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr "Productieordertoewijzingen"
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Onderdeelfabrikanten"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr "Fabrikantonderdeel verwijderen"
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr "Toegewezen aan Productieorder"
msgid "Allocated to Sales Orders"
msgstr "Toegewezen aan verkooporders"
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr "Datum"
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Serienummer"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr "Datum"
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Geen locatie ingesteld"
@@ -7702,7 +7715,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:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Vereiste Hoeveelheid"
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Sluit"
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr "Formaat"
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr "Selecteer bestandsindeling"
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr "Geen Voorraad Aanwezig"
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr "Gemiddelde inkoopprijs"
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr "Inclusief Op Bestelling"
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr "Bewerk Productieorder"
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr "Maak Productieorder"
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr "Annuleer Productieorder"
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
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:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr "Voorraadartikelen zijn toegewezen aan deze productieorder"
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr "Er staat incomplete productie open voor deze productieorder"
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr "Productieorder is gereed om als voltooid te markeren"
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr "Productieorder is onvolledig"
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr "Voltooi Productieoorder"
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "De stuklijst bevat traceerbare onderdelen"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr "Productieuitvoeren moeten individueel worden gegenereerd"
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "Traceerbare onderdelen kunnen een serienummer hebben"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
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:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr "Selecteer Productieuitvoeren"
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr "Voltooi Productieuitvoeren"
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr "Verwijder Productieuitvoeren"
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr "Geen productieordertoewijzingen gevonden"
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr "Locatie is niet opgegeven"
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr "Geen actieve productieuitvoeren gevonden"
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr "Voorraadtoewijzing bewerken"
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr "Voorraadtoewijzing verwijderen"
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr "Onvoldoende voorraad beschikbaar"
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr "Genoeg voorraad beschikbaar"
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr "Toegewezen"
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr "Productie voorraad"
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr "Voorraad order"
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr "Voorraad toewijzen"
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Onderdelen selecteren"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
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:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr "Specificeer voorraadtoewijzingshoeveelheid"
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
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:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr "Voorraadartikelen toewijzen aan Productieorder"
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr "Geen overeenkomende voorraadlocaties"
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr "Geen overeenkomende voorraadartikelen"
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
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:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr "Productieorder is achterstallig"
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr "Fabrikantonderdeel toevoegen"
msgid "Edit Manufacturer Part"
msgstr "Fabrikantonderdeel bewerken"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Leverancier Toevoegen"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "Leveranciersonderdeel Toevoegen"
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr "Geen voorraadartikelen toegewezen aan deze zending"
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr "De volgende voorraadartikelen worden verzonden"
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr "Verzending Voltooien"
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr "Verzending Bevestigen"
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr "Geen verzendingen in behandeling gevonden"
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr "Voltooi Inkooporder"
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr "Order markeren als voltooid?"
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr "Alle artikelen zijn ontvangen"
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
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/order.js:299
+#: templates/js/translated/order.js:300
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/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr "Inkooporder annuleren"
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr "Weet u zeker dat u deze inkooporder wilt annuleren?"
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr "Deze inkooporder kan niet geannuleerd worden"
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr "Geef inkooporder uit"
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr "Na het plaatsen van de inkooporder zijn de artikelen niet meer bewerkbaar."
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr "Verkooporder annuleren"
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
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/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr "Verkooporder aanmaken"
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Bewerk Inkooporder"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr "Export Order"
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr "Te bestellen aantal"
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr "Nieuwe inkooporder"
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr "Toevoegen aan inkooporder"
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr "Geen overeenkomende inkooporders"
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr "Selecteer artikelen"
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr "Ten minste één artikel moet worden geselecteerd"
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Order Code"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Besteld"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr "Ontvang Artikelen Inkooporder"
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr "Geen inkooporder gevonden"
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr "Order is achterstallig"
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr "Artikelen"
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr "Artikel dupliceren"
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr "Artikel wijzigen"
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr "Artikel verwijderen"
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr "Geen artikelen gevonden"
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr "Totaal"
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "Stukprijs"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Totaalprijs"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr "Dit artikel is achterstallig"
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr "Artikel ontvangen"
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr "Artikel dupliceren"
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr "Artikel bewerken"
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr "Artikel verwijderen"
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr "Kopieer regel"
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr "Bewerk regel"
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr "Verwijder regel"
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr "Kopieer Regel"
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr "Bewerk Regel"
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr "Verwijder Regel"
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr "Geen overeenkomende regel"
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr "Geen verkooporder gevonden"
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr "Ongeldige Klant"
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr "Verzending bewerken"
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr "Verzending Voltooien"
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr "Verzending verwijderen"
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr "Verzending bewerken"
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr "Verzending verwijderen"
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr "Geen overeenkomende verzending gevonden"
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr "Verzendingsreferentie"
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr "Niet verzonden"
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr "Volgen"
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr "Factuur"
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr "Voeg Verzending toe"
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Bevestig de voorraadtoewijzing"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr "Voorraadartikel toewijzen aan Verkooporder"
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr "Geen verkooporder toewijzingen gevonden"
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr "Bewerk Voorraadtoewijzing"
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "Bevestig Verwijderen"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr "Verwijder Voorraadtoewijzing"
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr "Verzonden aan klant"
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr "Voorraadlocatie niet gespecificeerd"
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr "Wijs serienummers toe"
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Koop voorraad"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Bereken prijs"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr "Kan niet worden verwijderd omdat artikelen verzonden zijn"
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr "Kan niet worden verwijderd omdat artikelen toegewezen zijn"
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr "Wijs Serienummers Toe"
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr "Werk Stukprijs Bij"
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr "Geen overeenkomende artikelen"
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr "Geen overeenkomende regels"
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po
index 6e0cf418be..56c88f833e 100644
--- a/InvenTree/locale/no/LC_MESSAGES/django.po
+++ b/InvenTree/locale/no/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -40,10 +40,10 @@ msgstr "Oppgi dato"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Notater"
@@ -211,11 +211,11 @@ msgstr "Velg fil å legge ved"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Lenke"
@@ -235,8 +235,8 @@ msgstr "Kommentar til fil"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Ugyldig valg"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Ugyldig valg"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Navn"
@@ -297,19 +297,20 @@ msgstr "Navn"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Beskrivelse"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "overkategori"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Nummer må være gyldig"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Returnert"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Sendt"
@@ -728,7 +729,7 @@ msgstr "Ugylding valg for overordnet build"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Build ordre"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Bygg ordrereferanse"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referanse"
@@ -762,7 +763,7 @@ msgstr "Referanse"
msgid "Brief description of the build"
msgstr "Kort beskrivelse av build"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Overordnet build"
@@ -771,13 +772,13 @@ msgstr "Overordnet build"
msgid "BuildOrder to which this build is allocated"
msgstr "Build order som denne build er tildelt til"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Build order som denne build er tildelt til"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Salgorder som denne build er tildelt til"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Kilde plassering"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Byggstatuskode"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Batch kode"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Batch kode for denne build output"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Opprettelsesdato"
@@ -884,7 +885,7 @@ 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:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Fullført dato"
@@ -892,7 +893,7 @@ msgstr "Fullført dato"
msgid "completed by"
msgstr "fullført av"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Utstedt av"
@@ -900,12 +901,12 @@ msgstr "Utstedt av"
msgid "User who issued this build order"
msgstr "Brukeren som utstede denne prosjekt order"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Ansvarlig"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "Valgt lagevare ikke funnet i BOM"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Prosjekt"
@@ -986,11 +987,11 @@ msgstr "Bygge for å tildele deler"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Kilde lagervare"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Kilde lagervare"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Målets lagervare"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Serienummer"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Beliggenhet"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "Påkrevd varer er ikke fullt tildelt"
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "BOM varer"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Måldato"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Fullført"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Fullført"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Salgsorder"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Utstedt av"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Destinasjon"
@@ -1447,7 +1452,7 @@ msgstr "Tildelte deler"
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Opprettet"
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Fjern lager allokering"
@@ -1510,7 +1515,7 @@ msgstr "Bestill nødvendige deler"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Bestill deler"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr "Tildeling fullført"
msgid "All untracked stock items have been allocated"
msgstr "Alle usporbar lagervarer har tildelt"
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr "Kopier kategori parametermaler ved oppretting av en del"
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Mal"
msgid "Parts are templates by default"
msgstr "Deler er maler som standard"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr "Standardvaluta brukt for dette firmaet"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr "Last ned bilde fra URL"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Oprett ny leverandørdel"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Ny leverandørdel"
@@ -3134,7 +3139,7 @@ msgstr "Produsentdeler"
msgid "Create new manufacturer part"
msgstr "Opprett ny produsentdeler"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Ny produsentdel"
@@ -3148,7 +3153,7 @@ msgstr "Leverandør lager"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Ny bestillingsorder"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Ny salgsorder"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr "Tildelt lagervare"
@@ -3206,7 +3211,7 @@ msgstr "Produsenter"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Bestill del"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Leverandører"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Slett"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr "Tildelt lagervarer"
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Valgmuligheter"
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr "Er du sikker du vil kansellere?"
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "Sporbare varer kan ha angitte serienummer"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po
index ae64875ec8..253685f44e 100644
--- a/InvenTree/locale/pl/LC_MESSAGES/django.po
+++ b/InvenTree/locale/pl/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -40,10 +40,10 @@ msgstr "Wprowadź dane"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Uwagi"
@@ -211,11 +211,11 @@ msgstr "Wybierz plik do załączenia"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Łącze"
@@ -235,8 +235,8 @@ msgstr "Komentarz pliku"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Błędny wybór"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Błędny wybór"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Nazwa"
@@ -297,19 +297,20 @@ msgstr "Nazwa"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Opis"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "nadrzędny"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Ścieżka"
@@ -335,7 +336,7 @@ msgstr "Błąd serwera"
msgid "An error has been logged by the server."
msgstr "Błąd został zapisany w logach serwera."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Numer musi być prawidłowy"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Zwrócone"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Wysłane"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Zlecenie Budowy"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Odwołanie do zamówienia wykonania"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referencja"
@@ -762,7 +763,7 @@ msgstr "Referencja"
msgid "Brief description of the build"
msgstr "Krótki opis budowy"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Budowa nadrzędna"
@@ -771,13 +772,13 @@ msgstr "Budowa nadrzędna"
msgid "BuildOrder to which this build is allocated"
msgstr "Zamówienie budowy, do którego budowa jest przypisana"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Lokalizacja źródła"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Kod statusu budowania"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Kod partii"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Kod partii dla wyjścia budowy"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Data utworzenia"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Data zakończenia"
@@ -892,7 +893,7 @@ msgstr "Data zakończenia"
msgid "completed by"
msgstr "zrealizowane przez"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Wydany przez"
@@ -900,12 +901,12 @@ msgstr "Wydany przez"
msgid "User who issued this build order"
msgstr "Użytkownik, który wydał to zamówienie"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Odpowiedzialny"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "Nie znaleziono wybranego elementu magazynowego w BOM"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Budowa"
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Lokalizacja magazynowania przedmiotu"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Lokalizacja magazynowania przedmiotu"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Docelowa lokalizacja magazynowa przedmiotu"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Numer seryjny"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Lokalizacja"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Status"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr "Akceptuj niekompletne"
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "Element BOM"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Anuluj Budowę"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Data docelowa"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr "Zaległe"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Zakończone"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Zakończone"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Zamówienie zakupu"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Dodane przez"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Przeznaczenie"
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Partia"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Utworzony"
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr "Przydziel zapasy do budowy"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Cofnij przydział zapasów"
@@ -1510,7 +1515,7 @@ msgstr "Zamów wymagane komponenty"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Zamów komponent"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Nowe zlecenie budowy"
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Szablon"
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Cena"
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Część bazowa"
@@ -2859,7 +2864,7 @@ msgstr "Wybierz producenta"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr "Wartość"
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Wybierz dostawcę"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Uwaga"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "koszt podstawowy"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr "Opakowanie"
msgid "Part packaging"
msgstr "Opakowanie części"
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "wielokrotność"
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "Firma"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Utwórz zamówienie zakupu"
@@ -3069,7 +3074,7 @@ msgstr "Pobierz obraz z adresu URL"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Utwórz nowego dostawcę części"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Nowy dostawca części"
@@ -3134,7 +3139,7 @@ msgstr "Części producenta"
msgid "Create new manufacturer part"
msgstr "Utwórz nową część producenta"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Nowa część producenta"
@@ -3148,7 +3153,7 @@ msgstr "Zapasy dostawcy"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Nowe zamówienie zakupu"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr "Producenci"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Zamów komponent"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Dostawcy"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Usuń"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Parametry"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "Usuń parametry"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Dodaj parametr"
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "Zamów komponent"
@@ -3358,7 +3363,7 @@ msgstr "Informacja cenowa"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr "Edytuj przedział cenowy"
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Stan"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr "Data wysyłki"
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr "Zamówienie"
@@ -3683,7 +3687,7 @@ msgstr "Zamówienie"
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Edytuj zamówienie zakupu"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Wybierz dostawcę części"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr "Dodaj element zamówienia"
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr "Oczekujące przesyłki"
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "Akcje"
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr "Ważny"
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr "Ta opcja musi być zaznaczona"
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr "Musi być większe niż zero"
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr "Musi być prawidłową ilością"
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr "To pole jest wymagane"
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Dostępna ilość"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr "W Zamówieniu"
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Kategoria komponentu"
@@ -4352,7 +4352,7 @@ msgstr "Kategorie części"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Części"
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Nazwa komponentu"
@@ -4415,11 +4415,11 @@ msgstr "Słowa kluczowe"
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Kategoria"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr "Tworzenie użytkownika"
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr "Sprzedaj wiele"
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr "Nazwa testu"
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr "Testowy opis"
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr "Wprowadź opis do tego testu"
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr "Wymagane"
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr "Wymaga wartości"
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr "Wymaga załącznika"
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr "Część nadrzędna"
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr "Dane"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr "Wartość parametru"
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr "Wartość domyślna"
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "ID komponentu"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr "Unikalny wartość ID komponentu"
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr "Nazwa komponentu"
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr "IPN komponentu"
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr "Wartość IPN części"
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr "Poziom"
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr "Wybierz część nadrzędną"
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr "Podczęść"
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr "Opcjonalne"
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr "Ten element BOM jest opcjonalny"
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr "Notatki pozycji BOM"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr "Suma kontrolna"
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr "Dziedziczone"
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Zezwalaj na warianty"
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr "Część zastępcza"
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr "Część 1"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr "Część 2"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr "Wybierz powiązaną część"
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr "Utwórz nową część"
msgid "New Part"
msgstr "Nowy komponent"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Opcje"
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr "Zapasy części"
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Odśwież"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr ""
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr "Warianty Części"
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr "Utwórz nowy wariant"
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr "Nowy wariant"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr "Powiązane części"
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr "Dodaj powiązane"
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "Zestawienie materiałowe"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr "Akcje eksportu"
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr "Eksportuj BOM"
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr "Drukuj raport BOM"
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr "Wgraj BOM"
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr "Kopiuj BOM"
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr "Weryfikuj BOM"
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr "Nowa część w BOM"
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr "Dodaj część do BOM"
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr "Złożenia"
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Dostawcy Części"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "Producenci części"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr "Powiązane części"
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr "Dodaj powiązaną część"
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr "Przypisane do zamówień sprzedaży"
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr "Całkowity Koszt"
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr "Brak dostępnych cen dostawców"
@@ -5414,6 +5422,18 @@ msgstr "Cena wewnętrzna"
msgid "No pricing information is available for this part."
msgstr "Brak dostępnych informacji o cenach dla tej części."
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr "Data"
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr "Warianty"
@@ -5462,7 +5482,7 @@ msgstr "Pokaż cenę sprzedaży"
msgid "Calculation parameters"
msgstr "Parametry obliczeniowe"
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr "Koszty dostawcy"
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "Brak w magazynie"
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Numer Seryjny"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr "Wynik"
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr "Data"
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr "Zaliczone"
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Lokacje nie są ustawione"
@@ -7705,7 +7718,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr "Wymagana ilość"
@@ -7719,6 +7732,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr "Minimalna ilość"
@@ -7920,10 +7934,10 @@ msgstr "Wyświetl dane wiersza"
msgid "Row Data"
msgstr "Dane wiersza"
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Zamknij"
@@ -7933,12 +7947,12 @@ msgid "Download BOM Template"
msgstr "Pobierz szablon BOM-u"
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr "Wybierz format pliku"
@@ -7994,390 +8008,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr "Dodaj zamiennik"
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr "Zobacz BOM"
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr "Czy na pewno przerwać tę budowę?"
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr "Ostatni numer seryjny"
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr "Utwórz zlecenie budowy"
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr "Wyjście"
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr "Ilość za"
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr "Przydzielono"
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Wybierz części"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr "Wybierz"
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr "Brak informacji o użytkowniku"
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8393,11 +8407,11 @@ msgstr "Dodaj część producenta"
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Dodaj dostawcę"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8768,381 +8782,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr "Oznacz zamówienie jako zakończone?"
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Edytuj zamówienie zakupu"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "Kod zamówienia"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr "Zamówione"
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr "Ilość do otrzymania"
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr "Potwierdź odbiór elementów"
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr "Przedmioty"
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr "Razem"
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "Cena jednostkowa"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Cena całkowita"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr "Nie znaleziono zamówień sprzedaży"
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr "Nieprawidłowy klient"
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr "Edytuj wysyłkę"
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr "Kompletna wysyłka"
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr "Usuń wysyłkę"
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr "Edytuj wysyłkę"
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr "Usuń wysyłkę"
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr "Nie odnaleziono pasujących przesyłek"
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr "Numer referencyjny przesyłki"
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr "Nie wysłano"
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr "Śledzenie"
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Potwierdź przydział zapasów"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr "Cena zakupu"
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr "Oblicz cenę"
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr "Zaktualizuj cenę jednostkową"
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9322,12 +9340,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9359,7 +9377,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Nie znaleziono części"
@@ -9371,100 +9389,124 @@ msgstr ""
msgid "No category"
msgstr "Brak kategorii"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Wyświetl jako listę"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Wyświetl jako siatkę"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "Ustaw kategorię części"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Wyświetl jako drzewo"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr "Obserwowana kategoria"
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr "Nie znaleziono informacji o ${human_name}"
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr "Edytuj ${human_name}"
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr "Usuń ${human_name}"
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr "Cena jednostkowa"
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10225,10 +10267,6 @@ msgstr "Brak pasujących wyników"
msgid "Hide/Show pagination"
msgstr "Ukryj/Pokaż stronicowanie"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Odśwież"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr "Przełącz"
diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po
index be9d592f45..8b2a7c9ef9 100644
--- a/InvenTree/locale/pt/LC_MESSAGES/django.po
+++ b/InvenTree/locale/pt/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:38\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -40,22 +40,22 @@ msgstr "Insira uma Data"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
-msgstr ""
+msgstr "Anotações"
#: InvenTree/format.py:142
#, python-brace-format
msgid "Value '{name}' does not appear in pattern format"
-msgstr ""
+msgstr "Valor '{name}' não está no formato correto"
#: InvenTree/format.py:152
msgid "Provided value does not match required pattern: "
-msgstr ""
+msgstr "O valor fornecido não corresponde ao padrão exigido: "
#: InvenTree/forms.py:133
msgid "Enter password"
@@ -91,23 +91,23 @@ msgstr "Voce precisa digital o mesmo email."
#: InvenTree/helpers.py:173
msgid "Connection error"
-msgstr ""
+msgstr "Erro de conexão"
#: InvenTree/helpers.py:177 InvenTree/helpers.py:182
msgid "Server responded with invalid status code"
-msgstr ""
+msgstr "O servidor respondeu com código de status inválido"
#: InvenTree/helpers.py:179
msgid "Exception occurred"
-msgstr ""
+msgstr "Ocorreu uma exceção"
#: InvenTree/helpers.py:187
msgid "Server responded with invalid Content-Length value"
-msgstr ""
+msgstr "O servidor respondeu com valor inválido de '{Content-Length}'"
#: InvenTree/helpers.py:190
msgid "Image size is too large"
-msgstr ""
+msgstr "Tamanho da imagem muito grande"
#: InvenTree/helpers.py:202
msgid "Image download exceeded maximum size"
@@ -211,11 +211,11 @@ msgstr "Selecione arquivo para anexar"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Link"
@@ -235,8 +235,8 @@ msgstr "Comentario sobre arquivo"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Escolha invalida"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Escolha invalida"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Nome"
@@ -297,19 +297,20 @@ msgstr "Nome"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Descricao"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "parent"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr "Erro de servidor"
msgid "An error has been logged by the server."
msgstr "Log de erro salvo pelo servidor."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Preicsa ser um numero valido"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po
index 5548cd4fd5..e222b10313 100644
--- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po
+++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-15 13:12+0000\n"
+"POT-Creation-Date: 2022-08-17 06:25+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -37,15 +37,15 @@ msgstr ""
#: order/templates/order/so_sidebar.html:17
#: part/templates/part/part_sidebar.html:59
#: report/templates/report/inventree_build_order_base.html:172
-#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329
-#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823
-#: stock/serializers.py:922 stock/serializers.py:1054
+#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329
+#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
+#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
-#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976
+#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -200,7 +200,7 @@ msgstr ""
msgid "Missing external link"
msgstr ""
-#: InvenTree/models.py:395 stock/models.py:2095
+#: InvenTree/models.py:395 stock/models.py:2102
#: templates/js/translated/attachment.js:103
#: templates/js/translated/attachment.js:241
msgid "Attachment"
@@ -212,7 +212,7 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:795
+#: part/models.py:802
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
@@ -220,8 +220,8 @@ msgstr ""
msgid "Link"
msgstr ""
-#: InvenTree/models.py:403 build/models.py:296 part/models.py:796
-#: stock/models.py:651
+#: InvenTree/models.py:403 build/models.py:296 part/models.py:803
+#: stock/models.py:658
msgid "Link to external URL"
msgstr ""
@@ -234,12 +234,12 @@ msgstr ""
msgid "File comment"
msgstr ""
-#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646
-#: common/models.py:1647 common/models.py:1870 common/models.py:1871
-#: common/models.py:2133 common/models.py:2134 part/models.py:2193
-#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239
+#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
+#: common/models.py:1666 common/models.py:1889 common/models.py:1890
+#: common/models.py:2152 common/models.py:2153 part/models.py:2200
+#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
-#: templates/js/translated/stock.js:2632
+#: templates/js/translated/stock.js:2641
msgid "User"
msgstr ""
@@ -276,19 +276,19 @@ msgstr ""
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856
-#: company/models.py:358 label/models.py:101 part/models.py:739
-#: part/models.py:2371 plugin/models.py:93 report/models.py:152
+#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
+#: company/models.py:358 label/models.py:101 part/models.py:746
+#: part/models.py:2378 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
-#: templates/InvenTree/settings/plugin.html:49
-#: templates/InvenTree/settings/plugin.html:132
+#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:134
#: templates/InvenTree/settings/plugin_settings.html:23
#: templates/InvenTree/settings/settings.html:347
#: templates/js/translated/company.js:545
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
-#: templates/js/translated/part.js:684 templates/js/translated/part.js:836
-#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388
+#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,21 +297,21 @@ msgstr ""
#: company/models.py:516 company/templates/company/company_base.html:71
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
-#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74
+#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
#: part/templates/part/part_base.html:167 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
-#: stock/templates/stock/location.html:103
+#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
-#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149
-#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933
-#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739
-#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469
+#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
+#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -324,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -336,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2692
+#: InvenTree/serializers.py:55 part/models.py:2699
msgid "Must be a valid number"
msgstr ""
@@ -626,7 +626,7 @@ msgstr ""
msgid "Split child item"
msgstr ""
-#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080
+#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084
msgid "Merged stock items"
msgstr ""
@@ -748,7 +748,7 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2610
+#: order/models.py:904 part/models.py:2617
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
@@ -775,10 +775,10 @@ msgstr ""
#: build/models.py:191 build/templates/build/build_base.html:77
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:336 part/models.py:2139 part/models.py:2154
-#: part/models.py:2173 part/models.py:2191 part/models.py:2290
-#: part/models.py:2410 part/models.py:2500 part/models.py:2585
-#: part/models.py:2861 part/serializers.py:811
+#: part/models.py:343 part/models.py:2146 part/models.py:2161
+#: part/models.py:2180 part/models.py:2198 part/models.py:2297
+#: part/models.py:2417 part/models.py:2507 part/models.py:2592
+#: part/models.py:2868 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -801,11 +801,11 @@ msgstr ""
#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
-#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206
-#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582
-#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954
-#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495
-#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824
+#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
+#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
+#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
+#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504
+#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833
msgid "Part"
msgstr ""
@@ -863,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:655 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1247
msgid "Batch Code"
msgstr ""
@@ -871,7 +871,7 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:258 order/models.py:86 part/models.py:931
+#: build/models.py:258 order/models.py:86 part/models.py:938
#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
msgid "Creation Date"
msgstr ""
@@ -904,7 +904,7 @@ msgstr ""
#: build/models.py:289 build/templates/build/build_base.html:190
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
-#: order/templates/order/sales_order_base.html:183 part/models.py:935
+#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
msgid "Responsible"
@@ -917,7 +917,7 @@ msgstr ""
#: build/models.py:295 build/templates/build/detail.html:101
#: company/templates/company/manufacturer_part.html:107
#: company/templates/company/supplier_part.html:153
-#: part/templates/part/part_base.html:346 stock/models.py:649
+#: part/templates/part/part_base.html:346 stock/models.py:656
#: stock/templates/stock/item_base.html:205
msgid "External Link"
msgstr ""
@@ -983,8 +983,8 @@ msgid "Build to allocate parts"
msgstr ""
#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015
-#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754
-#: stock/serializers.py:880 stock/templates/stock/item_base.html:10
+#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756
+#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
@@ -992,8 +992,8 @@ msgstr ""
#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
-#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748
-#: templates/js/translated/stock.js:2568
+#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
+#: templates/js/translated/stock.js:2577
msgid "Stock Item"
msgstr ""
@@ -1003,11 +1003,11 @@ msgstr ""
#: build/models.py:1358 build/serializers.py:193
#: build/templates/build/build_base.html:82
-#: build/templates/build/detail.html:34 common/models.py:1678
+#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2601 part/templates/part/detail.html:937
+#: part/models.py:2608 part/templates/part/detail.html:937
#: part/templates/part/detail.html:1023
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
@@ -1030,11 +1030,11 @@ msgstr ""
#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147
-#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412
-#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454
-#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778
-#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417
+#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
+#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
msgstr ""
@@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output"
msgstr ""
#: build/serializers.py:208 build/serializers.py:665 order/models.py:318
-#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542
-#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244
+#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544
+#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251
#: stock/serializers.py:302
msgid "Quantity must be greater than zero"
msgstr ""
@@ -1092,7 +1092,7 @@ msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
#: stock/serializers.py:311 templates/js/translated/order.js:1258
-#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455
+#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1118,16 +1118,16 @@ msgstr ""
#: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532
#: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534
-#: stock/serializers.py:915 stock/serializers.py:1148
+#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
-#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584
-#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956
-#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509
+#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
+#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
+#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
msgid "Location"
msgstr ""
@@ -1140,8 +1140,8 @@ msgstr ""
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825
-#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718
+#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1217,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719
-#: part/models.py:2853
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
+#: part/models.py:2860
msgid "BOM Item"
msgstr ""
@@ -1234,7 +1234,7 @@ msgstr ""
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:651 stock/serializers.py:767
+#: build/serializers.py:651 stock/serializers.py:769
msgid "Item must be in stock"
msgstr ""
@@ -1372,7 +1372,7 @@ msgstr ""
#: report/templates/report/inventree_build_order_base.html:125
#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038
+#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
@@ -1450,8 +1450,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:170
#: templates/js/translated/build.js:1182
#: templates/js/translated/model_renderers.js:124
-#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839
-#: templates/js/translated/stock.js:2725
+#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
+#: templates/js/translated/stock.js:2734
#: templates/js/translated/table_filters.js:159
#: templates/js/translated/table_filters.js:250
msgid "Batch"
@@ -1511,7 +1511,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:177 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:977
msgid "Order Parts"
msgstr ""
@@ -1564,12 +1564,12 @@ msgid "Delete outputs"
msgstr ""
#: build/templates/build/detail.html:267
-#: stock/templates/stock/location.html:197 templates/stock_table.html:27
+#: stock/templates/stock/location.html:202 templates/stock_table.html:27
msgid "Printing Actions"
msgstr ""
#: build/templates/build/detail.html:271 build/templates/build/detail.html:272
-#: stock/templates/stock/location.html:201 templates/stock_table.html:31
+#: stock/templates/stock/location.html:206 templates/stock_table.html:31
msgid "Print labels"
msgstr ""
@@ -1846,7 +1846,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2412 report/models.py:158
+#: common/models.py:951 part/models.py:2419 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1856,7 +1856,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -1866,7 +1866,7 @@ msgstr ""
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/models.py:965 part/models.py:893
+#: common/models.py:965 part/models.py:900
#: templates/js/translated/table_filters.js:455
msgid "Component"
msgstr ""
@@ -1875,7 +1875,7 @@ msgstr ""
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/models.py:972 part/models.py:904
+#: common/models.py:972 part/models.py:911
msgid "Purchaseable"
msgstr ""
@@ -1883,7 +1883,7 @@ msgstr ""
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/models.py:979 part/models.py:909
+#: common/models.py:979 part/models.py:916
#: templates/js/translated/table_filters.js:476
msgid "Salable"
msgstr ""
@@ -1892,7 +1892,7 @@ msgstr ""
msgid "Parts are salable by default"
msgstr ""
-#: common/models.py:986 part/models.py:899
+#: common/models.py:986 part/models.py:906
#: templates/js/translated/table_filters.js:46
#: templates/js/translated/table_filters.js:108
#: templates/js/translated/table_filters.js:488
@@ -1903,7 +1903,7 @@ msgstr ""
msgid "Parts are trackable by default"
msgstr ""
-#: common/models.py:993 part/models.py:919
+#: common/models.py:993 part/models.py:926
#: part/templates/part/part_base.html:151
#: templates/js/translated/table_filters.js:42
#: templates/js/translated/table_filters.js:492
@@ -1987,608 +1987,632 @@ msgid "Format to display the part name"
msgstr ""
#: common/models.py:1074
-msgid "Enable label printing"
+msgid "Part Category Default Icon"
msgstr ""
#: common/models.py:1075
-msgid "Enable label printing from the web interface"
+msgid "Part category default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1080
+msgid "Enable label printing"
msgstr ""
#: common/models.py:1081
+msgid "Enable label printing from the web interface"
+msgstr ""
+
+#: common/models.py:1087
msgid "Label Image DPI"
msgstr ""
-#: common/models.py:1082
+#: common/models.py:1088
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/models.py:1091
+#: common/models.py:1097
msgid "Enable Reports"
msgstr ""
-#: common/models.py:1092
+#: common/models.py:1098
msgid "Enable generation of reports"
msgstr ""
-#: common/models.py:1098 templates/stats.html:25
+#: common/models.py:1104 templates/stats.html:25
msgid "Debug Mode"
msgstr ""
-#: common/models.py:1099
+#: common/models.py:1105
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/models.py:1105
+#: common/models.py:1111
msgid "Page Size"
msgstr ""
-#: common/models.py:1106
+#: common/models.py:1112
msgid "Default page size for PDF reports"
msgstr ""
-#: common/models.py:1116
+#: common/models.py:1122
msgid "Enable Test Reports"
msgstr ""
-#: common/models.py:1117
+#: common/models.py:1123
msgid "Enable generation of test reports"
msgstr ""
-#: common/models.py:1123
+#: common/models.py:1129
msgid "Attach Test Reports"
msgstr ""
-#: common/models.py:1124
+#: common/models.py:1130
msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item"
msgstr ""
-#: common/models.py:1130
+#: common/models.py:1136
msgid "Batch Code Template"
msgstr ""
-#: common/models.py:1131
+#: common/models.py:1137
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/models.py:1136
+#: common/models.py:1142
msgid "Stock Expiry"
msgstr ""
-#: common/models.py:1137
+#: common/models.py:1143
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/models.py:1143
+#: common/models.py:1149
msgid "Sell Expired Stock"
msgstr ""
-#: common/models.py:1144
+#: common/models.py:1150
msgid "Allow sale of expired stock"
msgstr ""
-#: common/models.py:1150
+#: common/models.py:1156
msgid "Stock Stale Time"
msgstr ""
-#: common/models.py:1151
+#: common/models.py:1157
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/models.py:1153
+#: common/models.py:1159
msgid "days"
msgstr ""
-#: common/models.py:1158
+#: common/models.py:1164
msgid "Build Expired Stock"
msgstr ""
-#: common/models.py:1159
+#: common/models.py:1165
msgid "Allow building with expired stock"
msgstr ""
-#: common/models.py:1165
+#: common/models.py:1171
msgid "Stock Ownership Control"
msgstr ""
-#: common/models.py:1166
+#: common/models.py:1172
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/models.py:1172
-msgid "Build Order Reference Pattern"
-msgstr ""
-
-#: common/models.py:1173
-msgid "Required pattern for generating Build Order reference field"
+#: common/models.py:1178
+msgid "Stock Location Default Icon"
msgstr ""
#: common/models.py:1179
+msgid "Stock location default icon (empty means no icon)"
+msgstr ""
+
+#: common/models.py:1184
+msgid "Build Order Reference Pattern"
+msgstr ""
+
+#: common/models.py:1185
+msgid "Required pattern for generating Build Order reference field"
+msgstr ""
+
+#: common/models.py:1191
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/models.py:1180
+#: common/models.py:1192
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/models.py:1186
+#: common/models.py:1198
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/models.py:1187
+#: common/models.py:1199
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/models.py:1193
+#: common/models.py:1205
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/models.py:1194
+#: common/models.py:1206
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/models.py:1201
+#: common/models.py:1213
msgid "Enable password forgot"
msgstr ""
-#: common/models.py:1202
+#: common/models.py:1214
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/models.py:1208
+#: common/models.py:1220
msgid "Enable registration"
msgstr ""
-#: common/models.py:1209
+#: common/models.py:1221
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/models.py:1215
+#: common/models.py:1227
msgid "Enable SSO"
msgstr ""
-#: common/models.py:1216
+#: common/models.py:1228
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/models.py:1222
+#: common/models.py:1234
msgid "Email required"
msgstr ""
-#: common/models.py:1223
+#: common/models.py:1235
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/models.py:1229
+#: common/models.py:1241
msgid "Auto-fill SSO users"
msgstr ""
-#: common/models.py:1230
+#: common/models.py:1242
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/models.py:1236
+#: common/models.py:1248
msgid "Mail twice"
msgstr ""
-#: common/models.py:1237
+#: common/models.py:1249
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/models.py:1243
+#: common/models.py:1255
msgid "Password twice"
msgstr ""
-#: common/models.py:1244
+#: common/models.py:1256
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/models.py:1250
+#: common/models.py:1262
msgid "Group on signup"
msgstr ""
-#: common/models.py:1251
+#: common/models.py:1263
msgid "Group to which new users are assigned on registration"
msgstr ""
-#: common/models.py:1257
+#: common/models.py:1269
msgid "Enforce MFA"
msgstr ""
-#: common/models.py:1258
+#: common/models.py:1270
msgid "Users must use multifactor security."
msgstr ""
-#: common/models.py:1264
+#: common/models.py:1276
msgid "Check plugins on startup"
msgstr ""
-#: common/models.py:1265
+#: common/models.py:1277
msgid "Check that all plugins are installed on startup - enable in container enviroments"
msgstr ""
-#: common/models.py:1273
+#: common/models.py:1284
+msgid "Check plugin signatures"
+msgstr ""
+
+#: common/models.py:1285
+msgid "Check and show signatures for plugins"
+msgstr ""
+
+#: common/models.py:1292
msgid "Enable URL integration"
msgstr ""
-#: common/models.py:1274
+#: common/models.py:1293
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/models.py:1281
+#: common/models.py:1300
msgid "Enable navigation integration"
msgstr ""
-#: common/models.py:1282
+#: common/models.py:1301
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/models.py:1289
+#: common/models.py:1308
msgid "Enable app integration"
msgstr ""
-#: common/models.py:1290
+#: common/models.py:1309
msgid "Enable plugins to add apps"
msgstr ""
-#: common/models.py:1297
+#: common/models.py:1316
msgid "Enable schedule integration"
msgstr ""
-#: common/models.py:1298
+#: common/models.py:1317
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/models.py:1305
+#: common/models.py:1324
msgid "Enable event integration"
msgstr ""
-#: common/models.py:1306
+#: common/models.py:1325
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/models.py:1323 common/models.py:1639
+#: common/models.py:1342 common/models.py:1658
msgid "Settings key (must be unique - case insensitive"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1364
msgid "Show subscribed parts"
msgstr ""
-#: common/models.py:1346
+#: common/models.py:1365
msgid "Show subscribed parts on the homepage"
msgstr ""
-#: common/models.py:1352
+#: common/models.py:1371
msgid "Show subscribed categories"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1372
msgid "Show subscribed part categories on the homepage"
msgstr ""
-#: common/models.py:1359
+#: common/models.py:1378
msgid "Show latest parts"
msgstr ""
-#: common/models.py:1360
+#: common/models.py:1379
msgid "Show latest parts on the homepage"
msgstr ""
-#: common/models.py:1366
+#: common/models.py:1385
msgid "Recent Part Count"
msgstr ""
-#: common/models.py:1367
+#: common/models.py:1386
msgid "Number of recent parts to display on index page"
msgstr ""
-#: common/models.py:1373
+#: common/models.py:1392
msgid "Show unvalidated BOMs"
msgstr ""
-#: common/models.py:1374
+#: common/models.py:1393
msgid "Show BOMs that await validation on the homepage"
msgstr ""
-#: common/models.py:1380
+#: common/models.py:1399
msgid "Show recent stock changes"
msgstr ""
-#: common/models.py:1381
+#: common/models.py:1400
msgid "Show recently changed stock items on the homepage"
msgstr ""
-#: common/models.py:1387
+#: common/models.py:1406
msgid "Recent Stock Count"
msgstr ""
-#: common/models.py:1388
+#: common/models.py:1407
msgid "Number of recent stock items to display on index page"
msgstr ""
-#: common/models.py:1394
+#: common/models.py:1413
msgid "Show low stock"
msgstr ""
-#: common/models.py:1395
+#: common/models.py:1414
msgid "Show low stock items on the homepage"
msgstr ""
-#: common/models.py:1401
+#: common/models.py:1420
msgid "Show depleted stock"
msgstr ""
-#: common/models.py:1402
+#: common/models.py:1421
msgid "Show depleted stock items on the homepage"
msgstr ""
-#: common/models.py:1408
+#: common/models.py:1427
msgid "Show needed stock"
msgstr ""
-#: common/models.py:1409
+#: common/models.py:1428
msgid "Show stock items needed for builds on the homepage"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1434
msgid "Show expired stock"
msgstr ""
-#: common/models.py:1416
+#: common/models.py:1435
msgid "Show expired stock items on the homepage"
msgstr ""
-#: common/models.py:1422
+#: common/models.py:1441
msgid "Show stale stock"
msgstr ""
-#: common/models.py:1423
+#: common/models.py:1442
msgid "Show stale stock items on the homepage"
msgstr ""
-#: common/models.py:1429
+#: common/models.py:1448
msgid "Show pending builds"
msgstr ""
-#: common/models.py:1430
+#: common/models.py:1449
msgid "Show pending builds on the homepage"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1455
msgid "Show overdue builds"
msgstr ""
-#: common/models.py:1437
+#: common/models.py:1456
msgid "Show overdue builds on the homepage"
msgstr ""
-#: common/models.py:1443
+#: common/models.py:1462
msgid "Show outstanding POs"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1463
msgid "Show outstanding POs on the homepage"
msgstr ""
-#: common/models.py:1450
+#: common/models.py:1469
msgid "Show overdue POs"
msgstr ""
-#: common/models.py:1451
+#: common/models.py:1470
msgid "Show overdue POs on the homepage"
msgstr ""
-#: common/models.py:1457
+#: common/models.py:1476
msgid "Show outstanding SOs"
msgstr ""
-#: common/models.py:1458
+#: common/models.py:1477
msgid "Show outstanding SOs on the homepage"
msgstr ""
-#: common/models.py:1464
+#: common/models.py:1483
msgid "Show overdue SOs"
msgstr ""
-#: common/models.py:1465
+#: common/models.py:1484
msgid "Show overdue SOs on the homepage"
msgstr ""
-#: common/models.py:1471
+#: common/models.py:1490
msgid "Inline label display"
msgstr ""
-#: common/models.py:1472
+#: common/models.py:1491
msgid "Display PDF labels in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1478
+#: common/models.py:1497
msgid "Inline report display"
msgstr ""
-#: common/models.py:1479
+#: common/models.py:1498
msgid "Display PDF reports in the browser, instead of downloading as a file"
msgstr ""
-#: common/models.py:1485
+#: common/models.py:1504
msgid "Search Parts"
msgstr ""
-#: common/models.py:1486
+#: common/models.py:1505
msgid "Display parts in search preview window"
msgstr ""
-#: common/models.py:1492
+#: common/models.py:1511
msgid "Seach Supplier Parts"
msgstr ""
-#: common/models.py:1493
+#: common/models.py:1512
msgid "Display supplier parts in search preview window"
msgstr ""
-#: common/models.py:1499
+#: common/models.py:1518
msgid "Search Manufacturer Parts"
msgstr ""
-#: common/models.py:1500
+#: common/models.py:1519
msgid "Display manufacturer parts in search preview window"
msgstr ""
-#: common/models.py:1506
+#: common/models.py:1525
msgid "Hide Inactive Parts"
msgstr ""
-#: common/models.py:1507
+#: common/models.py:1526
msgid "Excluded inactive parts from search preview window"
msgstr ""
-#: common/models.py:1513
+#: common/models.py:1532
msgid "Search Categories"
msgstr ""
-#: common/models.py:1514
+#: common/models.py:1533
msgid "Display part categories in search preview window"
msgstr ""
-#: common/models.py:1520
+#: common/models.py:1539
msgid "Search Stock"
msgstr ""
-#: common/models.py:1521
+#: common/models.py:1540
msgid "Display stock items in search preview window"
msgstr ""
-#: common/models.py:1527
+#: common/models.py:1546
msgid "Hide Unavailable Stock Items"
msgstr ""
-#: common/models.py:1528
+#: common/models.py:1547
msgid "Exclude stock items which are not available from the search preview window"
msgstr ""
-#: common/models.py:1534
+#: common/models.py:1553
msgid "Search Locations"
msgstr ""
-#: common/models.py:1535
+#: common/models.py:1554
msgid "Display stock locations in search preview window"
msgstr ""
-#: common/models.py:1541
+#: common/models.py:1560
msgid "Search Companies"
msgstr ""
-#: common/models.py:1542
+#: common/models.py:1561
msgid "Display companies in search preview window"
msgstr ""
-#: common/models.py:1548
+#: common/models.py:1567
msgid "Search Purchase Orders"
msgstr ""
-#: common/models.py:1549
+#: common/models.py:1568
msgid "Display purchase orders in search preview window"
msgstr ""
-#: common/models.py:1555
+#: common/models.py:1574
msgid "Exclude Inactive Purchase Orders"
msgstr ""
-#: common/models.py:1556
+#: common/models.py:1575
msgid "Exclude inactive purchase orders from search preview window"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1581
msgid "Search Sales Orders"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1582
msgid "Display sales orders in search preview window"
msgstr ""
-#: common/models.py:1569
+#: common/models.py:1588
msgid "Exclude Inactive Sales Orders"
msgstr ""
-#: common/models.py:1570
+#: common/models.py:1589
msgid "Exclude inactive sales orders from search preview window"
msgstr ""
-#: common/models.py:1576
+#: common/models.py:1595
msgid "Search Preview Results"
msgstr ""
-#: common/models.py:1577
+#: common/models.py:1596
msgid "Number of results to show in each section of the search preview window"
msgstr ""
-#: common/models.py:1583
+#: common/models.py:1602
msgid "Show Quantity in Forms"
msgstr ""
-#: common/models.py:1584
+#: common/models.py:1603
msgid "Display available part quantity in some forms"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1609
msgid "Escape Key Closes Forms"
msgstr ""
-#: common/models.py:1591
+#: common/models.py:1610
msgid "Use the escape key to close modal forms"
msgstr ""
-#: common/models.py:1597
+#: common/models.py:1616
msgid "Fixed Navbar"
msgstr ""
-#: common/models.py:1598
+#: common/models.py:1617
msgid "The navbar position is fixed to the top of the screen"
msgstr ""
-#: common/models.py:1604
+#: common/models.py:1623
msgid "Date Format"
msgstr ""
-#: common/models.py:1605
+#: common/models.py:1624
msgid "Preferred format for displaying dates"
msgstr ""
-#: common/models.py:1619 part/templates/part/detail.html:41
+#: common/models.py:1638 part/templates/part/detail.html:41
msgid "Part Scheduling"
msgstr ""
-#: common/models.py:1620
+#: common/models.py:1639
msgid "Display part scheduling information"
msgstr ""
-#: common/models.py:1679
+#: common/models.py:1698
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1686 company/serializers.py:366
+#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
-#: common/models.py:1687
+#: common/models.py:1706
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1847 common/models.py:2025
+#: common/models.py:1866 common/models.py:2044
msgid "Endpoint"
msgstr ""
-#: common/models.py:1848
+#: common/models.py:1867
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1876
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1862 part/models.py:914 plugin/models.py:99
+#: common/models.py:1881 part/models.py:921 plugin/models.py:100
#: templates/js/translated/table_filters.js:34
#: templates/js/translated/table_filters.js:104
#: templates/js/translated/table_filters.js:316
@@ -2596,67 +2620,67 @@ msgstr ""
msgid "Active"
msgstr ""
-#: common/models.py:1863
+#: common/models.py:1882
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1877
+#: common/models.py:1896
msgid "Token"
msgstr ""
-#: common/models.py:1878
+#: common/models.py:1897
msgid "Token for access"
msgstr ""
-#: common/models.py:1885
+#: common/models.py:1904
msgid "Secret"
msgstr ""
-#: common/models.py:1886
+#: common/models.py:1905
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1992
+#: common/models.py:2011
msgid "Message ID"
msgstr ""
-#: common/models.py:1993
+#: common/models.py:2012
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:2001
+#: common/models.py:2020
msgid "Host"
msgstr ""
-#: common/models.py:2002
+#: common/models.py:2021
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:2009
+#: common/models.py:2028
msgid "Header"
msgstr ""
-#: common/models.py:2010
+#: common/models.py:2029
msgid "Header of this message"
msgstr ""
-#: common/models.py:2016
+#: common/models.py:2035
msgid "Body"
msgstr ""
-#: common/models.py:2017
+#: common/models.py:2036
msgid "Body of this message"
msgstr ""
-#: common/models.py:2026
+#: common/models.py:2045
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:2031
+#: common/models.py:2050
msgid "Worked on"
msgstr ""
-#: common/models.py:2032
+#: common/models.py:2051
msgid "Was the work on this message finished?"
msgstr ""
@@ -2763,7 +2787,7 @@ msgstr ""
msgid "Link to external company information"
msgstr ""
-#: company/models.py:135 part/models.py:808
+#: company/models.py:135 part/models.py:815
msgid "Image"
msgstr ""
@@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?"
msgstr ""
#: company/models.py:148 company/serializers.py:372
-#: company/templates/company/company_base.html:106 part/serializers.py:151
-#: part/serializers.py:182 stock/serializers.py:180
+#: company/templates/company/company_base.html:106 part/serializers.py:153
+#: part/serializers.py:184 stock/serializers.py:180
msgid "Currency"
msgstr ""
@@ -2805,7 +2829,7 @@ msgstr ""
msgid "Default currency used for this company"
msgstr ""
-#: company/models.py:248 company/models.py:481 stock/models.py:591
+#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
#: templates/js/translated/bom.js:543
msgid "Base Part"
@@ -2837,7 +2861,7 @@ msgstr ""
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
-#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023
+#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2866,9 +2890,9 @@ msgstr ""
#: company/models.py:365
#: report/templates/report/inventree_test_report_base.html:95
-#: stock/models.py:2088 templates/js/translated/company.js:546
-#: templates/js/translated/company.js:764 templates/js/translated/part.js:845
-#: templates/js/translated/stock.js:1356
+#: stock/models.py:2095 templates/js/translated/company.js:546
+#: templates/js/translated/company.js:764 templates/js/translated/part.js:849
+#: templates/js/translated/stock.js:1360
msgid "Value"
msgstr ""
@@ -2876,10 +2900,10 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:881 part/models.py:2379
+#: company/models.py:372 part/models.py:888 part/models.py:2386
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
-#: templates/js/translated/company.js:770 templates/js/translated/part.js:851
+#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
msgid "Units"
msgstr ""
@@ -2899,7 +2923,7 @@ msgstr ""
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
-#: templates/js/translated/part.js:217 templates/js/translated/part.js:991
+#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
msgstr ""
@@ -2911,7 +2935,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
-#: templates/js/translated/part.js:1009
+#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2932,23 +2956,23 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2613 part/templates/part/upload_bom.html:59
+#: part/models.py:2620 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1735
+#: company/models.py:526 part/models.py:1742
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:528 company/templates/company/supplier_part.html:139
-#: stock/models.py:617 stock/templates/stock/item_base.html:245
-#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972
+#: stock/models.py:624 stock/templates/stock/item_base.html:245
+#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976
msgid "Packaging"
msgstr ""
@@ -2956,7 +2980,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1737
+#: company/models.py:530 part/models.py:1744
msgid "multiple"
msgstr ""
@@ -2969,7 +2993,7 @@ msgstr ""
#: templates/email/low_stock_notification.html:18
#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:599
+#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
msgstr ""
@@ -3042,12 +3066,12 @@ msgid "Download image from URL"
msgstr ""
#: company/templates/company/company_base.html:86 order/models.py:637
-#: order/templates/order/sales_order_base.html:116 stock/models.py:636
-#: stock/models.py:637 stock/serializers.py:809
+#: order/templates/order/sales_order_base.html:116 stock/models.py:643
+#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
-#: templates/js/translated/stock.js:2550
+#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
msgstr ""
@@ -3088,7 +3112,7 @@ msgstr ""
#: company/templates/company/detail.html:36
#: company/templates/company/detail.html:84
-#: part/templates/part/category.html:176
+#: part/templates/part/category.html:182
msgid "Order parts"
msgstr ""
@@ -3236,7 +3260,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:170
#: part/templates/part/detail.html:186
#: templates/InvenTree/settings/category.html:12
-#: templates/InvenTree/settings/part.html:66
+#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
msgstr ""
@@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items"
msgstr ""
#: company/templates/company/supplier_part.html:7
-#: company/templates/company/supplier_part.html:24 stock/models.py:600
+#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
-#: templates/js/translated/stock.js:1929
+#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock"
msgstr ""
#: company/templates/company/supplier_part.html:168
-#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176
+#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181
msgid "Create new stock item"
msgstr ""
#: company/templates/company/supplier_part.html:169
-#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177
-#: templates/js/translated/stock.js:431
+#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182
+#: templates/js/translated/stock.js:435
msgid "New Stock Item"
msgstr ""
@@ -3335,7 +3359,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3344,12 +3368,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2234
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2248
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3371,13 +3395,13 @@ msgstr ""
#: company/templates/company/supplier_part_navbar.html:15
#: part/templates/part/part_sidebar.html:14
-#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19
+#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747
-#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456
-#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750
+#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
+#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
+#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
#: templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3397,14 +3421,14 @@ msgid "Pricing"
msgstr ""
#: company/templates/company/supplier_part_sidebar.html:5
-#: part/templates/part/category.html:197
+#: part/templates/part/category.html:203
#: part/templates/part/category_sidebar.html:17
-#: stock/templates/stock/location.html:147
-#: stock/templates/stock/location.html:161
-#: stock/templates/stock/location.html:173
+#: stock/templates/stock/location.html:152
+#: stock/templates/stock/location.html:166
+#: stock/templates/stock/location.html:178
#: stock/templates/stock/location_sidebar.html:7
#: templates/InvenTree/search.html:153 templates/js/translated/search.js:223
-#: templates/js/translated/stock.js:2427 users/models.py:40
+#: templates/js/translated/stock.js:2436 users/models.py:40
msgid "Stock Items"
msgstr ""
@@ -3661,8 +3685,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
-#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909
-#: templates/js/translated/stock.js:2531
+#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
+#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
msgstr ""
@@ -3672,7 +3696,7 @@ msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
-#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087
+#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
msgstr ""
@@ -3681,9 +3705,9 @@ msgstr ""
msgid "Number of items received"
msgstr ""
-#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727
+#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734
#: stock/serializers.py:171 stock/templates/stock/item_base.html:191
-#: templates/js/translated/stock.js:1960
+#: templates/js/translated/stock.js:1964
msgid "Purchase Price"
msgstr ""
@@ -4071,8 +4095,8 @@ msgstr ""
#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621
-#: templates/js/translated/stock.js:789
+#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
msgstr ""
@@ -4266,8 +4290,8 @@ msgstr ""
msgid "This field is required"
msgstr ""
-#: part/bom.py:127 part/models.py:98 part/models.py:817
-#: part/templates/part/category.html:108 part/templates/part/part_base.html:330
+#: part/bom.py:127 part/models.py:98 part/models.py:824
+#: part/templates/part/category.html:114 part/templates/part/part_base.html:330
msgid "Default Location"
msgstr ""
@@ -4281,9 +4305,9 @@ msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586
-#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298
-#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486
+#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4304,516 +4328,524 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15
+#: part/models.py:107 stock/models.py:84
+msgid "Icon"
+msgstr ""
+
+#: part/models.py:108 stock/models.py:85
+msgid "Icon (optional)"
+msgstr ""
+
+#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
-#: part/models.py:116 part/templates/part/category.html:128
+#: part/models.py:123 part/templates/part/category.html:134
#: templates/InvenTree/search.html:95 templates/js/translated/search.js:198
#: users/models.py:37
msgid "Part Categories"
msgstr ""
-#: part/models.py:337 part/templates/part/cat_link.html:3
-#: part/templates/part/category.html:17 part/templates/part/category.html:133
-#: part/templates/part/category.html:153
+#: part/models.py:344 part/templates/part/cat_link.html:3
+#: part/templates/part/category.html:23 part/templates/part/category.html:139
+#: part/templates/part/category.html:159
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
-#: part/models.py:422
+#: part/models.py:429
msgid "Invalid choice for parent part"
msgstr ""
-#: part/models.py:492 part/models.py:504
+#: part/models.py:499 part/models.py:511
#, python-brace-format
msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)"
msgstr ""
-#: part/models.py:621
+#: part/models.py:628
msgid "Next available serial numbers are"
msgstr ""
-#: part/models.py:625
+#: part/models.py:632
msgid "Next available serial number is"
msgstr ""
-#: part/models.py:630
+#: part/models.py:637
msgid "Most recent serial number is"
msgstr ""
-#: part/models.py:711
+#: part/models.py:718
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:738 part/models.py:2509
+#: part/models.py:745 part/models.py:2516
msgid "Part name"
msgstr ""
-#: part/models.py:745
+#: part/models.py:752
msgid "Is Template"
msgstr ""
-#: part/models.py:746
+#: part/models.py:753
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:756
+#: part/models.py:763
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:757
+#: part/models.py:764
msgid "Variant Of"
msgstr ""
-#: part/models.py:763
+#: part/models.py:770
msgid "Part description"
msgstr ""
-#: part/models.py:768 part/templates/part/category.html:86
+#: part/models.py:775 part/templates/part/category.html:92
#: part/templates/part/part_base.html:294
msgid "Keywords"
msgstr ""
-#: part/models.py:769
+#: part/models.py:776
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:776 part/models.py:2211 part/models.py:2454
+#: part/models.py:783 part/models.py:2218 part/models.py:2461
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
-#: part/models.py:777
+#: part/models.py:784
msgid "Part category"
msgstr ""
-#: part/models.py:782 part/templates/part/part_base.html:266
-#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391
-#: templates/js/translated/stock.js:1722
+#: part/models.py:789 part/templates/part/part_base.html:266
+#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395
+#: templates/js/translated/stock.js:1726
msgid "IPN"
msgstr ""
-#: part/models.py:783
+#: part/models.py:790
msgid "Internal Part Number"
msgstr ""
-#: part/models.py:789
+#: part/models.py:796
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:790 part/templates/part/part_base.html:273
-#: report/models.py:171 templates/js/translated/part.js:739
+#: part/models.py:797 part/templates/part/part_base.html:273
+#: report/models.py:171 templates/js/translated/part.js:743
msgid "Revision"
msgstr ""
-#: part/models.py:815
+#: part/models.py:822
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:860 part/templates/part/part_base.html:339
+#: part/models.py:867 part/templates/part/part_base.html:339
msgid "Default Supplier"
msgstr ""
-#: part/models.py:861
+#: part/models.py:868
msgid "Default supplier part"
msgstr ""
-#: part/models.py:868
+#: part/models.py:875
msgid "Default Expiry"
msgstr ""
-#: part/models.py:869
+#: part/models.py:876
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:874 part/templates/part/part_base.html:200
+#: part/models.py:881 part/templates/part/part_base.html:200
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:875
+#: part/models.py:882
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:882
+#: part/models.py:889
msgid "Stock keeping units for this part"
msgstr ""
-#: part/models.py:888
+#: part/models.py:895
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:894
+#: part/models.py:901
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:900
+#: part/models.py:907
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:905
+#: part/models.py:912
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:910
+#: part/models.py:917
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:915
+#: part/models.py:922
msgid "Is this part active?"
msgstr ""
-#: part/models.py:920
+#: part/models.py:927
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:922
+#: part/models.py:929
msgid "Part notes"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "BOM checksum"
msgstr ""
-#: part/models.py:924
+#: part/models.py:931
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:927
+#: part/models.py:934
msgid "BOM checked by"
msgstr ""
-#: part/models.py:929
+#: part/models.py:936
msgid "BOM checked date"
msgstr ""
-#: part/models.py:933
+#: part/models.py:940
msgid "Creation User"
msgstr ""
-#: part/models.py:1737
+#: part/models.py:1744
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2258
+#: part/models.py:2265
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2275
+#: part/models.py:2282
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2295 templates/js/translated/part.js:1997
-#: templates/js/translated/stock.js:1336
+#: part/models.py:2302 templates/js/translated/part.js:2002
+#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2296
+#: part/models.py:2303
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2301
+#: part/models.py:2308
msgid "Test Description"
msgstr ""
-#: part/models.py:2302
+#: part/models.py:2309
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2307 templates/js/translated/part.js:2006
+#: part/models.py:2314 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2315
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2313 templates/js/translated/part.js:2014
+#: part/models.py:2320 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2314
+#: part/models.py:2321
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2319 templates/js/translated/part.js:2021
+#: part/models.py:2326 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2320
+#: part/models.py:2327
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2328
+#: part/models.py:2335
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2364
+#: part/models.py:2371
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2372
+#: part/models.py:2379
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2386
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2410
+#: part/models.py:2417
msgid "Parent Part"
msgstr ""
-#: part/models.py:2412 part/models.py:2460 part/models.py:2461
+#: part/models.py:2419 part/models.py:2467 part/models.py:2468
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Data"
msgstr ""
-#: part/models.py:2414
+#: part/models.py:2421
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2465 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2466
+#: part/models.py:2473
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2501
+#: part/models.py:2508
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2504 templates/js/translated/model_renderers.js:212
+#: part/models.py:2511 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2505
+#: part/models.py:2512
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2515
msgid "Part Name"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2519
msgid "Part IPN"
msgstr ""
-#: part/models.py:2513
+#: part/models.py:2520
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2516
+#: part/models.py:2523
msgid "Level"
msgstr ""
-#: part/models.py:2517
+#: part/models.py:2524
msgid "BOM level"
msgstr ""
-#: part/models.py:2586
+#: part/models.py:2593
msgid "Select parent part"
msgstr ""
-#: part/models.py:2594
+#: part/models.py:2601
msgid "Sub part"
msgstr ""
-#: part/models.py:2595
+#: part/models.py:2602
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2608
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2603 part/templates/part/upload_bom.html:58
+#: part/models.py:2610 part/templates/part/upload_bom.html:58
#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2603
+#: part/models.py:2610
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2606 part/templates/part/upload_bom.html:55
+#: part/models.py:2613 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2607
+#: part/models.py:2614
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2617
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2613
+#: part/models.py:2620
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "Checksum"
msgstr ""
-#: part/models.py:2615
+#: part/models.py:2622
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2619 part/templates/part/upload_bom.html:57
+#: part/models.py:2626 part/templates/part/upload_bom.html:57
#: templates/js/translated/bom.js:1016
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2627
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2625 part/templates/part/upload_bom.html:56
+#: part/models.py:2632 part/templates/part/upload_bom.html:56
#: templates/js/translated/bom.js:1008
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2626
+#: part/models.py:2633
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2704 stock/models.py:461
+#: part/models.py:2711 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2713 part/models.py:2715
+#: part/models.py:2720 part/models.py:2722
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2820
+#: part/models.py:2827
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2841
+#: part/models.py:2848
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2854
+#: part/models.py:2861
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2862
+#: part/models.py:2869
msgid "Substitute part"
msgstr ""
-#: part/models.py:2877
+#: part/models.py:2884
msgid "Part 1"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Part 2"
msgstr ""
-#: part/models.py:2881
+#: part/models.py:2888
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2899
+#: part/models.py:2906
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2903
+#: part/models.py:2910
msgid "Duplicate relationship already exists"
msgstr ""
-#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181
+#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181
msgid "Purchase currency of this stock item"
msgstr ""
-#: part/serializers.py:812
+#: part/serializers.py:814
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:820
+#: part/serializers.py:822
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:821
+#: part/serializers.py:823
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:826
+#: part/serializers.py:828
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:827
+#: part/serializers.py:829
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:832
+#: part/serializers.py:834
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:833
+#: part/serializers.py:835
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:838
+#: part/serializers.py:840
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:839
+#: part/serializers.py:841
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
-#: part/serializers.py:879
+#: part/serializers.py:881
msgid "Clear Existing BOM"
msgstr ""
-#: part/serializers.py:880
+#: part/serializers.py:882
msgid "Delete existing BOM items before uploading"
msgstr ""
-#: part/serializers.py:910
+#: part/serializers.py:912
msgid "No part column specified"
msgstr ""
-#: part/serializers.py:953
+#: part/serializers.py:955
msgid "Multiple matching parts found"
msgstr ""
-#: part/serializers.py:956
+#: part/serializers.py:958
msgid "No matching part found"
msgstr ""
-#: part/serializers.py:959
+#: part/serializers.py:961
msgid "Part is not designated as a component"
msgstr ""
-#: part/serializers.py:968
+#: part/serializers.py:970
msgid "Quantity not provided"
msgstr ""
-#: part/serializers.py:976
+#: part/serializers.py:978
msgid "Invalid quantity"
msgstr ""
-#: part/serializers.py:997
+#: part/serializers.py:999
msgid "At least one BOM item is required"
msgstr ""
@@ -4853,101 +4885,101 @@ msgstr ""
msgid "Delete Items"
msgstr ""
-#: part/templates/part/category.html:28 part/templates/part/category.html:32
+#: part/templates/part/category.html:34 part/templates/part/category.html:38
msgid "You are subscribed to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:36
+#: part/templates/part/category.html:42
msgid "Subscribe to notifications for this category"
msgstr ""
-#: part/templates/part/category.html:42
+#: part/templates/part/category.html:48
msgid "Category Actions"
msgstr ""
-#: part/templates/part/category.html:47
+#: part/templates/part/category.html:53
msgid "Edit category"
msgstr ""
-#: part/templates/part/category.html:48
+#: part/templates/part/category.html:54
msgid "Edit Category"
msgstr ""
-#: part/templates/part/category.html:52
+#: part/templates/part/category.html:58
msgid "Delete category"
msgstr ""
-#: part/templates/part/category.html:53
+#: part/templates/part/category.html:59
msgid "Delete Category"
msgstr ""
-#: part/templates/part/category.html:61
+#: part/templates/part/category.html:67
msgid "Create new part category"
msgstr ""
-#: part/templates/part/category.html:62
+#: part/templates/part/category.html:68
msgid "New Category"
msgstr ""
-#: part/templates/part/category.html:80 part/templates/part/category.html:93
+#: part/templates/part/category.html:86 part/templates/part/category.html:99
msgid "Category Path"
msgstr ""
-#: part/templates/part/category.html:94
+#: part/templates/part/category.html:100
msgid "Top level part category"
msgstr ""
-#: part/templates/part/category.html:114 part/templates/part/category.html:222
+#: part/templates/part/category.html:120 part/templates/part/category.html:228
#: part/templates/part/category_sidebar.html:7
msgid "Subcategories"
msgstr ""
-#: part/templates/part/category.html:119
+#: part/templates/part/category.html:125
msgid "Parts (Including subcategories)"
msgstr ""
-#: part/templates/part/category.html:157
+#: part/templates/part/category.html:163
msgid "Create new part"
msgstr ""
-#: part/templates/part/category.html:158 templates/js/translated/bom.js:367
+#: part/templates/part/category.html:164 templates/js/translated/bom.js:367
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:168 part/templates/part/detail.html:363
+#: part/templates/part/category.html:174 part/templates/part/detail.html:363
#: part/templates/part/detail.html:394
msgid "Options"
msgstr ""
-#: part/templates/part/category.html:172
+#: part/templates/part/category.html:178
msgid "Set category"
msgstr ""
-#: part/templates/part/category.html:173
+#: part/templates/part/category.html:179
msgid "Set Category"
msgstr ""
-#: part/templates/part/category.html:180 part/templates/part/category.html:181
+#: part/templates/part/category.html:186 part/templates/part/category.html:187
msgid "Print Labels"
msgstr ""
-#: part/templates/part/category.html:206
+#: part/templates/part/category.html:212
msgid "Part Parameters"
msgstr ""
-#: part/templates/part/category.html:320
+#: part/templates/part/category.html:327
msgid "Create Part Category"
msgstr ""
-#: part/templates/part/category.html:340
+#: part/templates/part/category.html:347
msgid "Create Part"
msgstr ""
-#: part/templates/part/category.html:343
+#: part/templates/part/category.html:350
msgid "Create another part after this one"
msgstr ""
-#: part/templates/part/category.html:344
+#: part/templates/part/category.html:351
msgid "Part created successfully"
msgstr ""
@@ -4955,7 +4987,7 @@ msgstr ""
msgid "Import Parts"
msgstr ""
-#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375
+#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379
msgid "Duplicate Part"
msgstr ""
@@ -5177,19 +5209,19 @@ msgstr ""
#: part/templates/part/part_base.html:43
#: stock/templates/stock/item_base.html:41
-#: stock/templates/stock/location.html:43
+#: stock/templates/stock/location.html:48
msgid "Barcode actions"
msgstr ""
#: part/templates/part/part_base.html:46
#: stock/templates/stock/item_base.html:45
-#: stock/templates/stock/location.html:45 templates/qr_button.html:1
+#: stock/templates/stock/location.html:50 templates/qr_button.html:1
msgid "Show QR Code"
msgstr ""
#: part/templates/part/part_base.html:49
#: stock/templates/stock/item_base.html:63
-#: stock/templates/stock/location.html:47
+#: stock/templates/stock/location.html:52
msgid "Print Label"
msgstr ""
@@ -5199,7 +5231,7 @@ msgstr ""
#: part/templates/part/part_base.html:60
#: stock/templates/stock/item_base.html:116
-#: stock/templates/stock/location.html:56
+#: stock/templates/stock/location.html:61
msgid "Stock actions"
msgstr ""
@@ -5260,7 +5292,7 @@ msgstr ""
#: templates/js/translated/company.js:624
#: templates/js/translated/company.js:884
#: templates/js/translated/model_renderers.js:204
-#: templates/js/translated/part.js:650 templates/js/translated/part.js:727
+#: templates/js/translated/part.js:654 templates/js/translated/part.js:731
msgid "Inactive"
msgstr ""
@@ -5294,9 +5326,9 @@ msgstr ""
msgid "Can Build"
msgstr ""
-#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589
-#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
+#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5469,8 +5501,8 @@ msgstr ""
msgid "No sale pice history available for this part."
msgstr ""
-#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612
-#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494
+#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5635,51 +5667,55 @@ msgstr ""
msgid "Allow sending of emails for event notifications"
msgstr ""
-#: plugin/models.py:32
+#: plugin/models.py:33
msgid "Plugin Metadata"
msgstr ""
-#: plugin/models.py:33
+#: plugin/models.py:34
msgid "JSON metadata field, for use by external plugins"
msgstr ""
-#: plugin/models.py:79
+#: plugin/models.py:80
msgid "Plugin Configuration"
msgstr ""
-#: plugin/models.py:80
+#: plugin/models.py:81
msgid "Plugin Configurations"
msgstr ""
-#: plugin/models.py:85
+#: plugin/models.py:86
msgid "Key"
msgstr ""
-#: plugin/models.py:86
+#: plugin/models.py:87
msgid "Key of plugin"
msgstr ""
-#: plugin/models.py:94
+#: plugin/models.py:95
msgid "PluginName of the plugin"
msgstr ""
-#: plugin/models.py:100
+#: plugin/models.py:101
msgid "Is the plugin active"
msgstr ""
-#: plugin/models.py:168
+#: plugin/models.py:158
+msgid "Sample plugin"
+msgstr ""
+
+#: plugin/models.py:186
msgid "Plugin"
msgstr ""
-#: plugin/models.py:231
+#: plugin/models.py:249
msgid "Method"
msgstr ""
-#: plugin/plugin.py:228
+#: plugin/plugin.py:251
msgid "No author found"
msgstr ""
-#: plugin/plugin.py:240
+#: plugin/plugin.py:263
msgid "No date found"
msgstr ""
@@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
-#: stock/models.py:641 stock/templates/stock/item_base.html:322
+#: stock/models.py:648 stock/templates/stock/item_base.html:322
#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
#: templates/js/translated/model_renderers.js:118
#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486
+#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5871,19 +5907,19 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:93
-#: stock/models.py:2076
+#: stock/models.py:2083
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:94
-#: stock/models.py:2082
+#: stock/models.py:2089
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:51
+#: templates/InvenTree/settings/plugin.html:53
#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459
+#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
msgid "Date"
msgstr ""
@@ -5901,8 +5937,8 @@ msgid "Installed Items"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:137
-#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776
-#: templates/js/translated/stock.js:2708
+#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780
+#: templates/js/translated/stock.js:2717
msgid "Serial"
msgstr ""
@@ -5918,241 +5954,241 @@ msgstr ""
msgid "Serial numbers cannot be supplied for a non-trackable part"
msgstr ""
-#: stock/models.py:82 stock/models.py:732
+#: stock/models.py:89 stock/models.py:739
#: stock/templates/stock/item_base.html:252
msgid "Owner"
msgstr ""
-#: stock/models.py:83 stock/models.py:733
+#: stock/models.py:90 stock/models.py:740
msgid "Select Owner"
msgstr ""
-#: stock/models.py:435
+#: stock/models.py:442
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:467 stock/serializers.py:95
+#: stock/models.py:474 stock/serializers.py:95
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:484
+#: stock/models.py:491
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:494 stock/models.py:503
+#: stock/models.py:501 stock/models.py:510
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:502
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:517
+#: stock/models.py:524
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:523
+#: stock/models.py:530
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:537
+#: stock/models.py:544
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:583
+#: stock/models.py:590
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:593
+#: stock/models.py:600
msgid "Base part"
msgstr ""
-#: stock/models.py:601
+#: stock/models.py:608
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:608 stock/templates/stock/location.html:17
+#: stock/models.py:615 stock/templates/stock/location.html:17
#: stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:611
+#: stock/models.py:618
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:618
+#: stock/models.py:625
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:624 stock/templates/stock/item_base.html:361
+#: stock/models.py:631 stock/templates/stock/item_base.html:361
msgid "Installed In"
msgstr ""
-#: stock/models.py:627
+#: stock/models.py:634
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:643
+#: stock/models.py:650
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:657
+#: stock/models.py:664
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:662
+#: stock/models.py:669
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:671
+#: stock/models.py:678
msgid "Source Build"
msgstr ""
-#: stock/models.py:673
+#: stock/models.py:680
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:684
+#: stock/models.py:691
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:687
+#: stock/models.py:694
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:693
+#: stock/models.py:700
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:699 stock/templates/stock/item_base.html:429
-#: templates/js/translated/stock.js:1879
+#: stock/models.py:706 stock/templates/stock/item_base.html:429
+#: templates/js/translated/stock.js:1883
msgid "Expiry Date"
msgstr ""
-#: stock/models.py:700
+#: stock/models.py:707
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:713
+#: stock/models.py:720
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:720 stock/templates/stock/item.html:132
+#: stock/models.py:727 stock/templates/stock/item.html:132
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:728
+#: stock/models.py:735
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:756
+#: stock/models.py:763
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1235
+#: stock/models.py:1242
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1241
+#: stock/models.py:1248
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1247
+#: stock/models.py:1254
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1250
+#: stock/models.py:1257
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1253
+#: stock/models.py:1260
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1260
+#: stock/models.py:1267
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1330
+#: stock/models.py:1337
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:1333
+#: stock/models.py:1340
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:1336
+#: stock/models.py:1343
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:1339
+#: stock/models.py:1346
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:1342
+#: stock/models.py:1349
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:1345
+#: stock/models.py:1352
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:1352 stock/serializers.py:959
+#: stock/models.py:1359 stock/serializers.py:961
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:1356
+#: stock/models.py:1363
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:1360
+#: stock/models.py:1367
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:1364
+#: stock/models.py:1371
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:1533
+#: stock/models.py:1540
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1994
+#: stock/models.py:2001
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2052
+#: stock/models.py:2059
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2058
+#: stock/models.py:2065
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2077
+#: stock/models.py:2084
msgid "Test name"
msgstr ""
-#: stock/models.py:2083
+#: stock/models.py:2090
msgid "Test result"
msgstr ""
-#: stock/models.py:2089
+#: stock/models.py:2096
msgid "Test output value"
msgstr ""
-#: stock/models.py:2096
+#: stock/models.py:2103
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2102
+#: stock/models.py:2109
msgid "Test notes"
msgstr ""
@@ -6177,7 +6213,7 @@ msgstr ""
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149
+#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151
msgid "Destination stock location"
msgstr ""
@@ -6225,63 +6261,63 @@ msgstr ""
msgid "Destination location for returned item"
msgstr ""
-#: stock/serializers.py:771
+#: stock/serializers.py:773
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:775
+#: stock/serializers.py:777
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:779
+#: stock/serializers.py:781
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:810
+#: stock/serializers.py:812
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:816
+#: stock/serializers.py:818
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:824
+#: stock/serializers.py:826
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:834 stock/serializers.py:1065
+#: stock/serializers.py:836 stock/serializers.py:1067
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:923
+#: stock/serializers.py:925
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:928
+#: stock/serializers.py:930
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:929
+#: stock/serializers.py:931
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:934
+#: stock/serializers.py:936
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:935
+#: stock/serializers.py:937
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:945
+#: stock/serializers.py:947
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1027
+#: stock/serializers.py:1029
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1055
+#: stock/serializers.py:1057
msgid "Stock transaction notes"
msgstr ""
@@ -6318,7 +6354,7 @@ msgstr ""
msgid "Installed Stock Items"
msgstr ""
-#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852
+#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861
msgid "Install Stock Item"
msgstr ""
@@ -6326,7 +6362,7 @@ msgstr ""
msgid "Delete all test results for this stock item"
msgstr ""
-#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518
+#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522
msgid "Add Test Result"
msgstr ""
@@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions"
msgstr ""
#: stock/templates/stock/item_base.html:80
-#: stock/templates/stock/location.html:63 templates/stock_table.html:47
+#: stock/templates/stock/location.html:68 templates/stock_table.html:47
msgid "Count stock"
msgstr ""
@@ -6374,7 +6410,7 @@ msgid "Serialize stock"
msgstr ""
#: stock/templates/stock/item_base.html:93
-#: stock/templates/stock/location.html:69 templates/stock_table.html:48
+#: stock/templates/stock/location.html:74 templates/stock_table.html:48
msgid "Transfer stock"
msgstr ""
@@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be
msgstr ""
#: stock/templates/stock/item_base.html:257
-#: stock/templates/stock/location.html:127
+#: stock/templates/stock/location.html:132
msgid "Read only"
msgstr ""
@@ -6513,7 +6549,7 @@ msgid "Stale"
msgstr ""
#: stock/templates/stock/item_base.html:442
-#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895
+#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899
msgid "Last Updated"
msgstr ""
@@ -6557,58 +6593,58 @@ msgstr ""
msgid "Select quantity to serialize, and unique serial numbers."
msgstr ""
-#: stock/templates/stock/location.html:33
+#: stock/templates/stock/location.html:38
msgid "Locate stock location"
msgstr ""
-#: stock/templates/stock/location.html:49
+#: stock/templates/stock/location.html:54
msgid "Check-in Items"
msgstr ""
-#: stock/templates/stock/location.html:77
+#: stock/templates/stock/location.html:82
msgid "Location actions"
msgstr ""
-#: stock/templates/stock/location.html:79
+#: stock/templates/stock/location.html:84
msgid "Edit location"
msgstr ""
-#: stock/templates/stock/location.html:81
+#: stock/templates/stock/location.html:86
msgid "Delete location"
msgstr ""
-#: stock/templates/stock/location.html:90
+#: stock/templates/stock/location.html:95
msgid "Create new stock location"
msgstr ""
-#: stock/templates/stock/location.html:91
+#: stock/templates/stock/location.html:96
msgid "New Location"
msgstr ""
-#: stock/templates/stock/location.html:109
-#: stock/templates/stock/location.html:115
+#: stock/templates/stock/location.html:114
+#: stock/templates/stock/location.html:120
msgid "Location Path"
msgstr ""
-#: stock/templates/stock/location.html:116
+#: stock/templates/stock/location.html:121
msgid "Top level stock location"
msgstr ""
-#: stock/templates/stock/location.html:122
+#: stock/templates/stock/location.html:127
msgid "Location Owner"
msgstr ""
-#: stock/templates/stock/location.html:126
+#: stock/templates/stock/location.html:131
msgid "You are not in the list of owners of this location. This stock location cannot be edited."
msgstr ""
-#: stock/templates/stock/location.html:142
-#: stock/templates/stock/location.html:189
+#: stock/templates/stock/location.html:147
+#: stock/templates/stock/location.html:194
#: stock/templates/stock/location_sidebar.html:5
msgid "Sublocations"
msgstr ""
-#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165
+#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165
#: templates/js/translated/search.js:238 users/models.py:39
msgid "Stock Locations"
msgstr ""
@@ -6880,15 +6916,15 @@ msgstr ""
msgid "Part Settings"
msgstr ""
-#: templates/InvenTree/settings/part.html:44
+#: templates/InvenTree/settings/part.html:46
msgid "Part Import"
msgstr ""
-#: templates/InvenTree/settings/part.html:48
+#: templates/InvenTree/settings/part.html:50
msgid "Import Part"
msgstr ""
-#: templates/InvenTree/settings/part.html:62
+#: templates/InvenTree/settings/part.html:64
msgid "Part Parameter Templates"
msgstr ""
@@ -6900,47 +6936,47 @@ 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:34
+#: templates/InvenTree/settings/plugin.html:36
msgid "Plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:39
+#: templates/InvenTree/settings/plugin.html:41
#: templates/js/translated/plugin.js:16
msgid "Install Plugin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137
+#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137
#: users/models.py:36
msgid "Admin"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:50
+#: templates/InvenTree/settings/plugin.html:52
#: templates/InvenTree/settings/plugin_settings.html:28
msgid "Author"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:52
+#: templates/InvenTree/settings/plugin.html:54
#: templates/InvenTree/settings/plugin_settings.html:43
msgid "Version"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:74
+#: templates/InvenTree/settings/plugin.html:76
msgid "Sample"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:99
+#: templates/InvenTree/settings/plugin.html:101
msgid "Inactive plugins"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:122
+#: templates/InvenTree/settings/plugin.html:124
msgid "Plugin Error Stack"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:131
+#: templates/InvenTree/settings/plugin.html:133
msgid "Stage"
msgstr ""
-#: templates/InvenTree/settings/plugin.html:133
+#: templates/InvenTree/settings/plugin.html:135
#: templates/js/translated/notification.js:75
msgid "Message"
msgstr ""
@@ -7004,11 +7040,11 @@ msgstr ""
msgid "Commit Message"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:117
+#: templates/InvenTree/settings/plugin_settings.html:120
msgid "Sign Status"
msgstr ""
-#: templates/InvenTree/settings/plugin_settings.html:122
+#: templates/InvenTree/settings/plugin_settings.html:125
msgid "Sign Key"
msgstr ""
@@ -7835,7 +7871,7 @@ msgstr ""
msgid "Unlink"
msgstr ""
-#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050
+#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054
msgid "Remove stock item"
msgstr ""
@@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock"
msgstr ""
#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
-#: templates/js/translated/part.js:759
+#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
@@ -8105,12 +8141,12 @@ msgid "Complete Build Order"
msgstr ""
#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
-#: templates/js/translated/stock.js:210
+#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
-#: templates/js/translated/stock.js:212
+#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
@@ -8323,9 +8359,9 @@ msgstr ""
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383
-#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682
-#: templates/js/translated/stock.js:2382
+#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
+#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
@@ -8337,7 +8373,7 @@ msgstr ""
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638
+#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
@@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found"
msgstr ""
#: templates/js/translated/company.js:616
-#: templates/js/translated/company.js:876 templates/js/translated/part.js:634
-#: templates/js/translated/part.js:719
+#: templates/js/translated/company.js:876 templates/js/translated/part.js:638
+#: templates/js/translated/part.js:723
msgid "Template part"
msgstr ""
#: templates/js/translated/company.js:620
-#: templates/js/translated/company.js:880 templates/js/translated/part.js:638
-#: templates/js/translated/part.js:723
+#: templates/js/translated/company.js:880 templates/js/translated/part.js:642
+#: templates/js/translated/part.js:727
msgid "Assembled part"
msgstr ""
-#: templates/js/translated/company.js:748 templates/js/translated/part.js:826
+#: templates/js/translated/company.js:748 templates/js/translated/part.js:830
msgid "No parameters found"
msgstr ""
-#: templates/js/translated/company.js:785 templates/js/translated/part.js:868
+#: templates/js/translated/company.js:785 templates/js/translated/part.js:872
msgid "Edit parameter"
msgstr ""
-#: templates/js/translated/company.js:786 templates/js/translated/part.js:869
+#: templates/js/translated/company.js:786 templates/js/translated/part.js:873
msgid "Delete parameter"
msgstr ""
-#: templates/js/translated/company.js:805 templates/js/translated/part.js:886
+#: templates/js/translated/company.js:805 templates/js/translated/part.js:890
msgid "Edit Parameter"
msgstr ""
-#: templates/js/translated/company.js:816 templates/js/translated/part.js:898
+#: templates/js/translated/company.js:816 templates/js/translated/part.js:902
msgid "Delete Parameter"
msgstr ""
@@ -8562,7 +8598,7 @@ msgid "Labels sent to printer"
msgstr ""
#: templates/js/translated/label.js:60 templates/js/translated/report.js:118
-#: templates/js/translated/stock.js:1074
+#: templates/js/translated/stock.js:1078
msgid "Select Stock Items"
msgstr ""
@@ -8872,7 +8908,7 @@ msgstr ""
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140
+#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
@@ -8896,7 +8932,7 @@ msgstr ""
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939
+#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
@@ -8931,7 +8967,7 @@ msgstr ""
#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484
msgid "Unit Price"
msgstr ""
@@ -8941,11 +8977,11 @@ msgid "Total Price"
msgstr ""
#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
-#: templates/js/translated/part.js:1046
+#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092
+#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
@@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation"
msgstr ""
#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
-#: templates/js/translated/stock.js:1598
+#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
@@ -9190,149 +9226,157 @@ msgstr ""
msgid "Parent part category"
msgstr ""
-#: templates/js/translated/part.js:318
+#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118
+msgid "Icon (optional) - Explore all available icons on"
+msgstr ""
+
+#: templates/js/translated/part.js:322
msgid "Edit Part Category"
msgstr ""
-#: templates/js/translated/part.js:331
+#: templates/js/translated/part.js:335
msgid "Are you sure you want to delete this part category?"
msgstr ""
-#: templates/js/translated/part.js:333
+#: templates/js/translated/part.js:337
msgid "Any child categories will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:334
+#: templates/js/translated/part.js:338
msgid "Any parts in this category will be moved to the parent of this category"
msgstr ""
-#: templates/js/translated/part.js:339
+#: templates/js/translated/part.js:343
msgid "Delete Part Category"
msgstr ""
-#: templates/js/translated/part.js:365
+#: templates/js/translated/part.js:369
msgid "Edit Part"
msgstr ""
-#: templates/js/translated/part.js:367
+#: templates/js/translated/part.js:371
msgid "Part edited"
msgstr ""
-#: templates/js/translated/part.js:378
+#: templates/js/translated/part.js:382
msgid "Create Part Variant"
msgstr ""
-#: templates/js/translated/part.js:430
+#: templates/js/translated/part.js:434
msgid "Active Part"
msgstr ""
-#: templates/js/translated/part.js:431
+#: templates/js/translated/part.js:435
msgid "Part cannot be deleted as it is currently active"
msgstr ""
-#: templates/js/translated/part.js:445
+#: templates/js/translated/part.js:449
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: templates/js/translated/part.js:447
+#: templates/js/translated/part.js:451
msgid "Any stock items for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:448
+#: templates/js/translated/part.js:452
msgid "This part will be removed from any Bills of Material"
msgstr ""
-#: templates/js/translated/part.js:449
+#: templates/js/translated/part.js:453
msgid "All manufacturer and supplier information for this part will be deleted"
msgstr ""
-#: templates/js/translated/part.js:456
+#: templates/js/translated/part.js:460
msgid "Delete Part"
msgstr ""
-#: templates/js/translated/part.js:492
+#: templates/js/translated/part.js:496
msgid "You are subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:494
+#: templates/js/translated/part.js:498
msgid "You have subscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:499
+#: templates/js/translated/part.js:503
msgid "Subscribe to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:501
+#: templates/js/translated/part.js:505
msgid "You have unsubscribed to notifications for this item"
msgstr ""
-#: templates/js/translated/part.js:518
+#: templates/js/translated/part.js:522
msgid "Validating the BOM will mark each line item as valid"
msgstr ""
-#: templates/js/translated/part.js:528
+#: templates/js/translated/part.js:532
msgid "Validate Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:531
+#: templates/js/translated/part.js:535
msgid "Validated Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:556
+#: templates/js/translated/part.js:560
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
-#: templates/js/translated/part.js:626 templates/js/translated/part.js:711
+#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
msgid "Trackable part"
msgstr ""
-#: templates/js/translated/part.js:630 templates/js/translated/part.js:715
+#: templates/js/translated/part.js:634 templates/js/translated/part.js:719
msgid "Virtual part"
msgstr ""
-#: templates/js/translated/part.js:642
+#: templates/js/translated/part.js:646
msgid "Subscribed part"
msgstr ""
-#: templates/js/translated/part.js:646
+#: templates/js/translated/part.js:650
msgid "Salable part"
msgstr ""
-#: templates/js/translated/part.js:774
+#: templates/js/translated/part.js:778
msgid "No variants found"
msgstr ""
-#: templates/js/translated/part.js:1162
+#: templates/js/translated/part.js:1166
msgid "Delete part relationship"
msgstr ""
-#: templates/js/translated/part.js:1186
+#: templates/js/translated/part.js:1190
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
-#: templates/js/translated/part.js:1292
+#: templates/js/translated/part.js:1296
msgid "Not available"
msgstr ""
-#: templates/js/translated/part.js:1443
+#: templates/js/translated/part.js:1447
msgid "No category"
msgstr ""
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
-#: templates/js/translated/stock.js:2343
+#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
@@ -9356,7 +9400,7 @@ msgstr ""
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
@@ -9364,67 +9408,67 @@ msgstr ""
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1925
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1983
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296
-#: templates/js/translated/stock.js:1556
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
+#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2041
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2063
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2077
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2102
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2159
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2160
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2274
+#: templates/js/translated/part.js:2279
msgid "Current Stock"
msgstr ""
-#: templates/js/translated/part.js:2307
+#: templates/js/translated/part.js:2312
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2333
+#: templates/js/translated/part.js:2338
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2403
+#: templates/js/translated/part.js:2408
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2422
+#: templates/js/translated/part.js:2427
msgid "Single Price Difference"
msgstr ""
@@ -9518,376 +9562,376 @@ msgstr ""
msgid "Parent stock location"
msgstr ""
-#: templates/js/translated/stock.js:140
+#: templates/js/translated/stock.js:144
msgid "Edit Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:155
+#: templates/js/translated/stock.js:159
msgid "New Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:169
+#: templates/js/translated/stock.js:173
msgid "Are you sure you want to delete this stock location?"
msgstr ""
-#: templates/js/translated/stock.js:171
+#: templates/js/translated/stock.js:175
msgid "Any child locations will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:172
+#: templates/js/translated/stock.js:176
msgid "Any stock items in this location will be moved to the parent of this location"
msgstr ""
-#: templates/js/translated/stock.js:178
+#: templates/js/translated/stock.js:182
msgid "Delete Stock Location"
msgstr ""
-#: templates/js/translated/stock.js:223
+#: templates/js/translated/stock.js:227
msgid "This part cannot be serialized"
msgstr ""
-#: templates/js/translated/stock.js:262
+#: templates/js/translated/stock.js:266
msgid "Enter initial quantity for this stock item"
msgstr ""
-#: templates/js/translated/stock.js:268
+#: templates/js/translated/stock.js:272
msgid "Enter serial numbers for new stock (or leave blank)"
msgstr ""
-#: templates/js/translated/stock.js:333
+#: templates/js/translated/stock.js:337
msgid "Stock item duplicated"
msgstr ""
-#: templates/js/translated/stock.js:353
+#: templates/js/translated/stock.js:357
msgid "Duplicate Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:369
+#: templates/js/translated/stock.js:373
msgid "Are you sure you want to delete this stock item?"
msgstr ""
-#: templates/js/translated/stock.js:374
+#: templates/js/translated/stock.js:378
msgid "Delete Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:395
+#: templates/js/translated/stock.js:399
msgid "Edit Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:445
+#: templates/js/translated/stock.js:449
msgid "Created new stock item"
msgstr ""
-#: templates/js/translated/stock.js:458
+#: templates/js/translated/stock.js:462
msgid "Created multiple stock items"
msgstr ""
-#: templates/js/translated/stock.js:483
+#: templates/js/translated/stock.js:487
msgid "Find Serial Number"
msgstr ""
-#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488
+#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492
msgid "Enter serial number"
msgstr ""
-#: templates/js/translated/stock.js:504
+#: templates/js/translated/stock.js:508
msgid "Enter a serial number"
msgstr ""
-#: templates/js/translated/stock.js:524
+#: templates/js/translated/stock.js:528
msgid "No matching serial number"
msgstr ""
-#: templates/js/translated/stock.js:533
+#: templates/js/translated/stock.js:537
msgid "More than one matching result found"
msgstr ""
-#: templates/js/translated/stock.js:656
+#: templates/js/translated/stock.js:660
msgid "Confirm stock assignment"
msgstr ""
-#: templates/js/translated/stock.js:657
+#: templates/js/translated/stock.js:661
msgid "Assign Stock to Customer"
msgstr ""
-#: templates/js/translated/stock.js:734
+#: templates/js/translated/stock.js:738
msgid "Warning: Merge operation cannot be reversed"
msgstr ""
-#: templates/js/translated/stock.js:735
+#: templates/js/translated/stock.js:739
msgid "Some information will be lost when merging stock items"
msgstr ""
-#: templates/js/translated/stock.js:737
+#: templates/js/translated/stock.js:741
msgid "Stock transaction history will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:738
+#: templates/js/translated/stock.js:742
msgid "Supplier part information will be deleted for merged items"
msgstr ""
-#: templates/js/translated/stock.js:824
+#: templates/js/translated/stock.js:828
msgid "Confirm stock item merge"
msgstr ""
-#: templates/js/translated/stock.js:825
+#: templates/js/translated/stock.js:829
msgid "Merge Stock Items"
msgstr ""
-#: templates/js/translated/stock.js:920
+#: templates/js/translated/stock.js:924
msgid "Transfer Stock"
msgstr ""
-#: templates/js/translated/stock.js:921
+#: templates/js/translated/stock.js:925
msgid "Move"
msgstr ""
-#: templates/js/translated/stock.js:927
+#: templates/js/translated/stock.js:931
msgid "Count Stock"
msgstr ""
-#: templates/js/translated/stock.js:928
+#: templates/js/translated/stock.js:932
msgid "Count"
msgstr ""
-#: templates/js/translated/stock.js:932
+#: templates/js/translated/stock.js:936
msgid "Remove Stock"
msgstr ""
-#: templates/js/translated/stock.js:933
+#: templates/js/translated/stock.js:937
msgid "Take"
msgstr ""
-#: templates/js/translated/stock.js:937
+#: templates/js/translated/stock.js:941
msgid "Add Stock"
msgstr ""
-#: templates/js/translated/stock.js:938 users/models.py:216
+#: templates/js/translated/stock.js:942 users/models.py:216
msgid "Add"
msgstr ""
-#: templates/js/translated/stock.js:942
+#: templates/js/translated/stock.js:946
msgid "Delete Stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Quantity cannot be adjusted for serialized stock"
msgstr ""
-#: templates/js/translated/stock.js:1035
+#: templates/js/translated/stock.js:1039
msgid "Specify stock quantity"
msgstr ""
-#: templates/js/translated/stock.js:1075
+#: templates/js/translated/stock.js:1079
msgid "You must select at least one available stock item"
msgstr ""
-#: templates/js/translated/stock.js:1098
+#: templates/js/translated/stock.js:1102
msgid "Confirm stock adjustment"
msgstr ""
-#: templates/js/translated/stock.js:1234
+#: templates/js/translated/stock.js:1238
msgid "PASS"
msgstr ""
-#: templates/js/translated/stock.js:1236
+#: templates/js/translated/stock.js:1240
msgid "FAIL"
msgstr ""
-#: templates/js/translated/stock.js:1241
+#: templates/js/translated/stock.js:1245
msgid "NO RESULT"
msgstr ""
-#: templates/js/translated/stock.js:1288
+#: templates/js/translated/stock.js:1292
msgid "Pass test"
msgstr ""
-#: templates/js/translated/stock.js:1291
+#: templates/js/translated/stock.js:1295
msgid "Add test result"
msgstr ""
-#: templates/js/translated/stock.js:1317
+#: templates/js/translated/stock.js:1321
msgid "No test results found"
msgstr ""
-#: templates/js/translated/stock.js:1374
+#: templates/js/translated/stock.js:1378
msgid "Test Date"
msgstr ""
-#: templates/js/translated/stock.js:1539
+#: templates/js/translated/stock.js:1543
msgid "Edit Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1561
+#: templates/js/translated/stock.js:1565
msgid "Delete Test Result"
msgstr ""
-#: templates/js/translated/stock.js:1590
+#: templates/js/translated/stock.js:1594
msgid "In production"
msgstr ""
-#: templates/js/translated/stock.js:1594
+#: templates/js/translated/stock.js:1598
msgid "Installed in Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:1602
+#: templates/js/translated/stock.js:1606
msgid "Assigned to Sales Order"
msgstr ""
-#: templates/js/translated/stock.js:1608
+#: templates/js/translated/stock.js:1612
msgid "No stock location set"
msgstr ""
-#: templates/js/translated/stock.js:1775
+#: templates/js/translated/stock.js:1779
msgid "Stock item is in production"
msgstr ""
-#: templates/js/translated/stock.js:1780
+#: templates/js/translated/stock.js:1784
msgid "Stock item assigned to sales order"
msgstr ""
-#: templates/js/translated/stock.js:1783
+#: templates/js/translated/stock.js:1787
msgid "Stock item assigned to customer"
msgstr ""
-#: templates/js/translated/stock.js:1786
+#: templates/js/translated/stock.js:1790
msgid "Serialized stock item has been allocated"
msgstr ""
-#: templates/js/translated/stock.js:1788
+#: templates/js/translated/stock.js:1792
msgid "Stock item has been fully allocated"
msgstr ""
-#: templates/js/translated/stock.js:1790
+#: templates/js/translated/stock.js:1794
msgid "Stock item has been partially allocated"
msgstr ""
-#: templates/js/translated/stock.js:1793
+#: templates/js/translated/stock.js:1797
msgid "Stock item has been installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:1797
+#: templates/js/translated/stock.js:1801
msgid "Stock item has expired"
msgstr ""
-#: templates/js/translated/stock.js:1799
+#: templates/js/translated/stock.js:1803
msgid "Stock item will expire soon"
msgstr ""
-#: templates/js/translated/stock.js:1806
+#: templates/js/translated/stock.js:1810
msgid "Stock item has been rejected"
msgstr ""
-#: templates/js/translated/stock.js:1808
+#: templates/js/translated/stock.js:1812
msgid "Stock item is lost"
msgstr ""
-#: templates/js/translated/stock.js:1810
+#: templates/js/translated/stock.js:1814
msgid "Stock item is destroyed"
msgstr ""
-#: templates/js/translated/stock.js:1814
+#: templates/js/translated/stock.js:1818
#: templates/js/translated/table_filters.js:196
msgid "Depleted"
msgstr ""
-#: templates/js/translated/stock.js:1865
+#: templates/js/translated/stock.js:1869
msgid "Stocktake"
msgstr ""
-#: templates/js/translated/stock.js:1944
+#: templates/js/translated/stock.js:1948
msgid "Supplier part not specified"
msgstr ""
-#: templates/js/translated/stock.js:1982
+#: templates/js/translated/stock.js:1986
msgid "No stock items matching query"
msgstr ""
-#: templates/js/translated/stock.js:2155
+#: templates/js/translated/stock.js:2159
msgid "Set Stock Status"
msgstr ""
-#: templates/js/translated/stock.js:2169
+#: templates/js/translated/stock.js:2173
msgid "Select Status Code"
msgstr ""
-#: templates/js/translated/stock.js:2170
+#: templates/js/translated/stock.js:2174
msgid "Status code must be selected"
msgstr ""
-#: templates/js/translated/stock.js:2400
+#: templates/js/translated/stock.js:2404
msgid "Load Subloactions"
msgstr ""
-#: templates/js/translated/stock.js:2484
+#: templates/js/translated/stock.js:2493
msgid "Details"
msgstr ""
-#: templates/js/translated/stock.js:2500
+#: templates/js/translated/stock.js:2509
msgid "Part information unavailable"
msgstr ""
-#: templates/js/translated/stock.js:2522
+#: templates/js/translated/stock.js:2531
msgid "Location no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2541
+#: templates/js/translated/stock.js:2550
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2560
+#: templates/js/translated/stock.js:2569
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2578
+#: templates/js/translated/stock.js:2587
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/translated/stock.js:2601
+#: templates/js/translated/stock.js:2610
msgid "Added"
msgstr ""
-#: templates/js/translated/stock.js:2609
+#: templates/js/translated/stock.js:2618
msgid "Removed"
msgstr ""
-#: templates/js/translated/stock.js:2685
+#: templates/js/translated/stock.js:2694
msgid "No installed items"
msgstr ""
-#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772
+#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781
msgid "Uninstall Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2785
+#: templates/js/translated/stock.js:2794
msgid "Select stock item to uninstall"
msgstr ""
-#: templates/js/translated/stock.js:2806
+#: templates/js/translated/stock.js:2815
msgid "Install another stock item into this item"
msgstr ""
-#: templates/js/translated/stock.js:2807
+#: templates/js/translated/stock.js:2816
msgid "Stock items can only be installed if they meet the following criteria"
msgstr ""
-#: templates/js/translated/stock.js:2809
+#: templates/js/translated/stock.js:2818
msgid "The Stock Item links to a Part which is the BOM for this Stock Item"
msgstr ""
-#: templates/js/translated/stock.js:2810
+#: templates/js/translated/stock.js:2819
msgid "The Stock Item is currently available in stock"
msgstr ""
-#: templates/js/translated/stock.js:2811
+#: templates/js/translated/stock.js:2820
msgid "The Stock Item is not already installed in another item"
msgstr ""
-#: templates/js/translated/stock.js:2812
+#: templates/js/translated/stock.js:2821
msgid "The Stock Item is tracked by either a batch code or serial number"
msgstr ""
-#: templates/js/translated/stock.js:2825
+#: templates/js/translated/stock.js:2834
msgid "Select part to install"
msgstr ""
diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po
index 764fb7e315..021369afa5 100644
--- a/InvenTree/locale/ru/LC_MESSAGES/django.po
+++ b/InvenTree/locale/ru/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -40,10 +40,10 @@ msgstr "Введите дату"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Заметки"
@@ -211,11 +211,11 @@ msgstr "Выберите файл для вложения"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Ссылка"
@@ -235,8 +235,8 @@ msgstr "Комментарий к файлу"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Неверный выбор"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Неверный выбор"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Название"
@@ -297,19 +297,20 @@ msgstr "Название"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Описание"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "родитель"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr "Путь"
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Должно быть действительным номером"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Возвращено"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Доставлено"
@@ -728,7 +729,7 @@ msgstr "Неверный выбор для родительской сборки
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Порядок сборки"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Ссылка на заказ"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Отсылка"
@@ -762,7 +763,7 @@ msgstr "Отсылка"
msgid "Brief description of the build"
msgstr "Краткое описание сборки"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Родительская сборка"
@@ -771,13 +772,13 @@ msgstr "Родительская сборка"
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Расположение источника"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Код статуса сборки"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Код партии"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Код партии для этого вывода сборки"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Дата создания"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты."
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Дата завершения"
@@ -892,7 +893,7 @@ msgstr "Дата завершения"
msgid "completed by"
msgstr "выполнено"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Выдал/ла"
@@ -900,12 +901,12 @@ msgstr "Выдал/ла"
msgid "User who issued this build order"
msgstr "Пользователь, выпустивший этот заказ на сборку"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Ответственный"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "Выбранная единица хранения не найдена в BOM"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Сборка"
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Исходный складской предмет"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Исходный складской предмет"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Серийные номера"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Расположение"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Статус"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "BOM Компонент"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Отменить сборку"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Удалить сборку"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Завершить сборку"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Описание сборки"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Целевая дата"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr "Просрочено"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Завершённые"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Завершённые"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Заказ покупателя"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Выдано"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Удалить заказ на сборку"
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Назначение"
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Партия"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Создано"
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Заказать детали"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Новый заказ на сборку"
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Шаблон"
msgid "Parts are templates by default"
msgstr "По умолчанию детали являются шаблонами"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Цена"
@@ -2830,7 +2835,7 @@ msgstr "Для этой компании используется валюта
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Базовая деталь"
@@ -2859,7 +2864,7 @@ msgstr "Выберите производителя"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr "Значение"
msgid "Parameter value"
msgstr "Значение параметра"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Выберите поставщика"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Заметка"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr "Упаковка"
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "Компания"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Создать заказ на закупку"
@@ -3069,7 +3074,7 @@ msgstr "Скачать изображение по ссылке"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Создать новую деталь поставщика"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Новая деталь поставщика"
@@ -3134,7 +3139,7 @@ msgstr "Детали производителей"
msgid "Create new manufacturer part"
msgstr "Создать новую деталь производителя"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "Новая деталь производителя"
@@ -3148,7 +3153,7 @@ msgstr "Склад поставщика"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Новый заказ на закупку"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Новый заказ на продажу"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr "Производители"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "Поставщики"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr "Удалить деталь поставщика"
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "Удалить"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "Параметры"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "Удалить параметры"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "Добавить параметр"
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Деталь поставщика"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr "Информация о цене"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Склад"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr "Компания, в которой детали заказываются"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr "Введите код партии для поступающих единиц хранения"
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr "Редактировать заказ на закупку"
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Выберите деталь поставщика"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "Действия"
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "Доступный запас"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "Категория детали"
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Детали"
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Наименование детали"
@@ -4415,11 +4415,11 @@ msgstr "Ключевые слова"
msgid "Part keywords to improve visibility in search results"
msgstr "Ключевые слова для улучшения видимости в результатах поиска"
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "Категория"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr "Родительская деталь"
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "Шаблон параметра"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr "Артикул или наименование детали"
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "Артикул"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr "Наименование детали"
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr "IPN"
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr "Значение IPN"
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr "Выберите родительскую деталь"
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr "Выбрать деталь для использования в BOM"
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Разрешить разновидности"
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr "Для отслеживаемых деталей количество должно быть целым числом"
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr "Часть 1"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr "Часть 2"
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr "Действия с BOM"
@@ -4945,8 +4945,8 @@ msgstr "Создать новую деталь"
msgid "New Part"
msgstr "Новая деталь"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "Настройки"
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr "Наличие на складе"
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Обновить"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr ""
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr "Разновидности детали"
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr "Создать новую разновидность"
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr "Новая разновидность"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr "Спецификация"
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr "Экспорт"
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr "Экспорт BOM"
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr "Сборки"
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Поставщики"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr "Внутренняя цена"
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr "Разновидности"
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Серийный номер"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr "Минимальное количество"
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr "Скачать шаблон BOM"
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr "Редактировать элемент BOM"
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr "Удалить элемент BOM"
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr "Элементы BOM не найдены"
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr "Унаследовано от родительского BOM"
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr "Редактировать заказ на сборку"
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr "Создать заказ на сборку"
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr "Вы уверены, что хотите отменить эту сборку?"
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "Спецификация содержит отслеживаемые детали"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "Отслеживаемые детали могут иметь серийные номера"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr "Добавить деталь производителя"
msgid "Edit Manufacturer Part"
msgstr "Редактировать деталь производителя"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "Добавить поставщика"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "Добавить деталь поставщика"
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr "Отмена этого заказа означает, что заказ нельзя будет редактировать."
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr "Редактировать заказ на закупку"
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr "Добавить код партии"
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr "Заказов на закупку не найдено"
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr "Общая стоимость"
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr "Заказы на продажу не найдены"
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Подтвердите выделение запасов"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr "Детали не найдены"
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr "Нет категории"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr "Список"
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr "Таблица"
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "Укажите категорию"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr "Дерево"
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr "Ничего не найдено"
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Обновить"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po
index dd7fbfcfc6..8a17499c17 100644
--- a/InvenTree/locale/sv/LC_MESSAGES/django.po
+++ b/InvenTree/locale/sv/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
@@ -40,10 +40,10 @@ msgstr "Ange datum"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Anteeckningar"
@@ -211,11 +211,11 @@ msgstr "Välj fil att bifoga"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Länk"
@@ -235,8 +235,8 @@ msgstr "Fil kommentar"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Ogiltigt val"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Ogiltigt val"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Namn"
@@ -297,19 +297,20 @@ msgstr "Namn"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Beskrivning"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "överordnad"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr "Serverfel"
msgid "An error has been logged by the server."
msgstr "Ett fel har loggats av servern."
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Måste vara ett giltigt nummer"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "Återlämnad"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Skickad"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Byggorder"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Byggorderreferens"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referens"
@@ -762,7 +763,7 @@ msgstr "Referens"
msgid "Brief description of the build"
msgstr "Kort beskrivning av bygget"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Överordnat Bygge"
@@ -771,13 +772,13 @@ msgstr "Överordnat Bygge"
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Skapad"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr "Användare som utfärdade denna byggorder"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Ansvarig"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Bygg"
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Serienummer"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Plats"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Status"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr "Acceptera ofullständig"
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Avbryt bygge"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "Ta bort bygge"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Färdigställ bygget"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr "Byggbeskrivning"
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Måldatum"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr "Försenad"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Slutförd"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Slutförd"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Försäljningsorder"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Utfärdad av"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Mål"
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Skapad"
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr "Beställ obligatoriska delar"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Beställ delar"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Ny byggorder"
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po
index 888242433d..21e1cf8b66 100644
--- a/InvenTree/locale/th/LC_MESSAGES/django.po
+++ b/InvenTree/locale/th/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:36\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Language: th_TH\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr ""
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr ""
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr ""
@@ -892,7 +893,7 @@ msgstr ""
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr ""
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr ""
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr ""
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr ""
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr ""
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po
index cd48c0460a..4abcce7682 100644
--- a/InvenTree/locale/tr/LC_MESSAGES/django.po
+++ b/InvenTree/locale/tr/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -40,10 +40,10 @@ msgstr "Tarih giriniz"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "Notlar"
@@ -211,11 +211,11 @@ msgstr "Eklenecek dosyayı seç"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "Bağlantı"
@@ -235,8 +235,8 @@ msgstr "Dosya yorumu"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "Geçersiz seçim"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "Geçersiz seçim"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "Adı"
@@ -297,19 +297,20 @@ msgstr "Adı"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Açıklama"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "üst"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "Geçerli bir numara olmalı"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "İade"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "Sevk edildi"
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Yapım İşi Emri"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "Yapım İşi Emri Referansı"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "Referans"
@@ -762,7 +763,7 @@ msgstr "Referans"
msgid "Brief description of the build"
msgstr "Yapım işinin kısa açıklaması"
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "Üst Yapım İşi"
@@ -771,13 +772,13 @@ msgstr "Üst Yapım İşi"
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:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "Bu yapım işinin tahsis edildiği satış emri"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "Kaynak Konum"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "Yapım işi durum kodu"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "Sıra numarası"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "Yapım işi çıktısı için sıra numarası"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "Oluşturulma tarihi"
@@ -884,7 +885,7 @@ 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:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Tamamlama tarihi"
@@ -892,7 +893,7 @@ msgstr "Tamamlama tarihi"
msgid "completed by"
msgstr "tamamlayan"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "Veren"
@@ -900,12 +901,12 @@ msgstr "Veren"
msgid "User who issued this build order"
msgstr "Bu yapım işi emrini veren kullanıcı"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "Sorumlu"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "Yapım İşi"
@@ -986,11 +987,11 @@ msgstr "Yapım işi için tahsis edilen parçalar"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "Kaynak stok kalemi"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "Kaynak stok kalemi"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "Hedef stok kalemi"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "Seri Numaraları"
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "Konum"
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Durum"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "Gerekli stok tamamen tahsis edilemedi"
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "Gerekli yapım işi miktarı tamamlanmadı"
@@ -1216,8 +1217,8 @@ msgstr "Gerekli yapım işi miktarı tamamlanmadı"
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "Yapım İşini İptal Et"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "Tamamlanmış Yapım İşi"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr "Bu yapım işi emri, %(link)s sipariş emrine tahsis edilmiştir"
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr "Bu yapım işi emri, %(link)s yapım iş emrinin altıdır"
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
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:120
+#: build/templates/build/build_base.html:123
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:125
+#: build/templates/build/build_base.html:128
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:130
+#: build/templates/build/build_base.html:133
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:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "Hedeflenen tarih"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, 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:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr "Bu yapım işinin %(target)s tarihinde süresi doluyor"
msgid "Overdue"
msgstr "Vadesi geçmiş"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Tamamlandı"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Tamamlandı"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "Sipariş Emri"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "Veren"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "Yapım İşi Emrini Sil"
@@ -1433,7 +1438,7 @@ 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:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr "Hedef"
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr "Toplu"
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "Oluşturuldu"
@@ -1479,7 +1484,7 @@ msgstr "Alt Yapım İşi Emrileri"
msgid "Allocate Stock to Build"
msgstr "Yapım İşi için Stok Tahsis Et"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "Stok tahsisini kaldır"
@@ -1510,7 +1515,7 @@ msgstr "Gerekli parçaları sipariş edin"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "Parça Siparişi"
@@ -1582,7 +1587,7 @@ msgstr "Tamamlanmış Yapım İşi Çıktıları"
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "Yeni Yapım İşi Emri"
@@ -1845,7 +1850,7 @@ 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:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "Şablon"
msgid "Parts are templates by default"
msgstr "Parçaları varsayılan olan şablondur"
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "Fiyat"
@@ -2830,7 +2835,7 @@ msgstr "Bu şirket için varsayılan para birimi"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr "Temel Parça"
@@ -2859,7 +2864,7 @@ msgstr "Üretici seçin"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr "ÜPN"
@@ -2899,7 +2904,7 @@ msgstr "Değer"
msgid "Parameter value"
msgstr "Parametre değeri"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "Tedarikçi seçin"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "Not"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr "temel maliyet"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr "Paketleme"
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr "çoklu"
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "Satın Alma Emri Oluştur"
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "Yeni tedarikçi parçası oluştur"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "Yeni Tedarikçi Parçası"
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr "Tedarikçi Stoku"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "Yeni Satın Alma Emri"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "Yeni Satış Emri"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr "Atanan Stok"
@@ -3206,7 +3211,7 @@ msgstr "Üreticiler"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "Parça siparişi"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
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:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "Tedarikçi Parçası"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr "Fiyat Bilgisi"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Stok"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "Tedarikçi Parçası Seçin"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr "İşlemler"
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr "Parça Kategorileri"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Parçalar"
@@ -4382,7 +4382,7 @@ msgstr "En son seri numarası"
msgid "Duplicate IPN not allowed in part settings"
msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "Parça adı"
@@ -4415,11 +4415,11 @@ msgstr "Anahtar kelimeler"
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr "Oluşturan Kullanıcı"
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
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:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr "Test Adı"
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr "Test Açıklaması"
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr "Gerekli"
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr "Testi geçmesi için bu gerekli mi?"
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr "Parametre şablon adı benzersiz olmalıdır"
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "Parametre Şablonu"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
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:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr "Çeşide İzin Ver"
-#: part/models.py:2633
+#: part/models.py:2680
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:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr "Parça Stoku"
-#: part/templates/part/detail.html:54
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
+msgstr "Yenile"
+
+#: part/templates/part/detail.html:59
msgid "Part Test Templates"
msgstr "Parça Test Şablonları"
-#: part/templates/part/detail.html:59
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr "Test Şablonu Ekle"
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr "Parça Çeşitleri"
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr "Yeni çeşit oluştur"
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr "Yeni Çeşit"
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "Parça Tedarikçileri"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr "Toplam Maliyet"
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr "Stok Yok"
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "Seri Numara"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "Konum ayarlanmadı"
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr "Kapat"
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr "Dışa aktarılan malzeme listesine parça tedarikçisi verilerini dahil
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr "Gerekli Parça"
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr "Yapım işi emri eksik"
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr "Tamamlanmış Yapım İşi Emri"
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr "Bu Malzeme Listesi takip edilebilir parçalar içeriyor"
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "Takip edilebilir parçaların seri numaraları belirtilmiş olmalı"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
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:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr "Yapım İşi Çıktısı Oluştur"
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr "Stok tahsisini düzenle"
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr "Stok tahsisini sil"
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "Parçaları Seçin"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr "Ürünler"
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "Stok tahsisini onayla"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "Silme İşlemini Onayla"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr "Seri numaralarını tahsis et"
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr "Seri Numaralarını Tahsis Et"
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr "Katagori Yok"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr "Sorgu ile eşleşen test şablonu bulunamadı"
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr "Sonuç bulunamadı"
msgid "Hide/Show pagination"
msgstr "Sayfalandırmayı Göster"
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr "Yenile"
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr "Değiştir"
diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po
index eff9f866a0..8576e41445 100644
--- a/InvenTree/locale/vi/LC_MESSAGES/django.po
+++ b/InvenTree/locale/vi/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:38\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
@@ -40,10 +40,10 @@ msgstr ""
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr ""
@@ -211,11 +211,11 @@ msgstr ""
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr ""
@@ -235,8 +235,8 @@ msgstr ""
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr ""
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr ""
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr ""
@@ -297,19 +297,20 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "Mô tả"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr ""
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr ""
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr ""
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr ""
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr ""
@@ -728,7 +729,7 @@ msgstr ""
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "Tạo đơn hàng"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr ""
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr ""
@@ -762,7 +763,7 @@ msgstr ""
msgid "Brief description of the build"
msgstr ""
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr ""
@@ -771,13 +772,13 @@ msgstr ""
msgid "BuildOrder to which this build is allocated"
msgstr ""
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr ""
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr ""
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr ""
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr ""
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr ""
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr ""
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr ""
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "Ngày hoàn thành"
@@ -892,7 +893,7 @@ msgstr "Ngày hoàn thành"
msgid "completed by"
msgstr ""
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr ""
@@ -900,12 +901,12 @@ msgstr ""
msgid "User who issued this build order"
msgstr ""
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr ""
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr ""
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr ""
@@ -986,11 +987,11 @@ msgstr ""
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr ""
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr ""
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr ""
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr ""
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr ""
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr ""
@@ -1120,10 +1121,10 @@ msgstr ""
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr ""
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "Trạng thái"
@@ -1196,7 +1197,7 @@ msgstr ""
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr ""
@@ -1208,7 +1209,7 @@ msgstr ""
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr ""
@@ -1216,8 +1217,8 @@ msgstr ""
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr ""
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr ""
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr ""
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr ""
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr ""
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr ""
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr ""
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr ""
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr ""
msgid "Overdue"
msgstr ""
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "Đã hoàn thành"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "Đã hoàn thành"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr ""
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr ""
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr ""
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr ""
@@ -1479,7 +1484,7 @@ msgstr ""
msgid "Allocate Stock to Build"
msgstr ""
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr ""
@@ -1510,7 +1515,7 @@ msgstr ""
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr ""
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr ""
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr ""
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr ""
@@ -2830,7 +2835,7 @@ msgstr ""
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr ""
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr ""
msgid "Parameter value"
msgstr ""
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr ""
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr ""
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
@@ -2979,7 +2984,7 @@ msgstr ""
msgid "Part packaging"
msgstr ""
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr ""
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr ""
@@ -3069,7 +3074,7 @@ msgstr ""
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr ""
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr ""
@@ -3134,7 +3139,7 @@ msgstr ""
msgid "Create new manufacturer part"
msgstr ""
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr ""
@@ -3148,7 +3153,7 @@ msgstr ""
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr ""
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr ""
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr ""
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr ""
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr ""
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr ""
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr ""
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr ""
@@ -3358,7 +3363,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "Kiện hàng"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr ""
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr ""
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr ""
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr ""
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr ""
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr ""
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr ""
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr ""
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr ""
@@ -4352,7 +4352,7 @@ msgstr ""
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "Nguyên liệu"
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr ""
@@ -4415,11 +4415,11 @@ msgstr ""
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr ""
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr ""
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr ""
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr ""
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr ""
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr ""
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr ""
msgid "New Part"
msgstr ""
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr ""
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr ""
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr ""
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr ""
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr ""
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr ""
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr ""
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr ""
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr ""
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr ""
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr ""
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr ""
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr "Số seri mới nhất"
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr ""
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr ""
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr ""
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr ""
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr ""
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr ""
msgid "Edit Manufacturer Part"
msgstr ""
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr ""
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr ""
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr ""
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr ""
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr ""
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr ""
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr ""
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr ""
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""
diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po
index faa8a7dab7..94546314a7 100644
--- a/InvenTree/locale/zh/LC_MESSAGES/django.po
+++ b/InvenTree/locale/zh/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-16 11:53+0000\n"
-"PO-Revision-Date: 2022-08-16 21:35\n"
+"POT-Creation-Date: 2022-08-18 05:14+0000\n"
+"PO-Revision-Date: 2022-08-18 21:39\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -40,10 +40,10 @@ msgstr "输入日期"
#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825
#: stock/serializers.py:924 stock/serializers.py:1056
#: stock/templates/stock/stock_sidebar.html:25
-#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101
-#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104
-#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753
-#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102
+#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099
+#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143
+#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792
+#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141
#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980
msgid "Notes"
msgstr "备注"
@@ -211,11 +211,11 @@ msgstr "选择附件"
#: InvenTree/models.py:402 company/models.py:124 company/models.py:276
#: company/models.py:510 order/models.py:84 order/models.py:1245
-#: part/models.py:802
+#: part/models.py:802 part/templates/part/part_scheduling.html:11
#: report/templates/report/inventree_build_order_base.html:164
#: templates/js/translated/company.js:656
-#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742
-#: templates/js/translated/part.js:1514
+#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781
+#: templates/js/translated/part.js:1510
msgid "Link"
msgstr "链接"
@@ -235,8 +235,8 @@ msgstr "文件注释"
#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665
#: common/models.py:1666 common/models.py:1889 common/models.py:1890
-#: common/models.py:2152 common/models.py:2153 part/models.py:2200
-#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257
+#: common/models.py:2152 common/models.py:2153 part/models.py:2247
+#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257
#: report/templates/report/inventree_test_report_base.html:96
#: templates/js/translated/stock.js:2641
msgid "User"
@@ -277,7 +277,7 @@ msgstr "选择无效"
#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875
#: company/models.py:358 label/models.py:101 part/models.py:746
-#: part/models.py:2378 plugin/models.py:94 report/models.py:152
+#: part/models.py:2425 plugin/models.py:94 report/models.py:152
#: templates/InvenTree/settings/mixins/urls.html:13
#: templates/InvenTree/settings/plugin.html:51
#: templates/InvenTree/settings/plugin.html:134
@@ -287,7 +287,7 @@ msgstr "选择无效"
#: templates/js/translated/company.js:758
#: templates/js/translated/notification.js:71
#: templates/js/translated/part.js:688 templates/js/translated/part.js:840
-#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392
+#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392
msgid "Name"
msgstr "名称"
@@ -297,19 +297,20 @@ msgstr "名称"
#: company/templates/company/manufacturer_part.html:75
#: company/templates/company/supplier_part.html:87 label/models.py:108
#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80
-#: part/templates/part/part_base.html:167 report/models.py:165
+#: part/templates/part/part_base.html:167
+#: part/templates/part/part_scheduling.html:12 report/models.py:165
#: report/models.py:507 report/models.py:551
#: report/templates/report/inventree_build_order_base.html:117
#: stock/templates/stock/location.html:108
#: templates/InvenTree/settings/plugin_settings.html:33
-#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848
-#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409
+#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846
+#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409
#: templates/js/translated/company.js:667
-#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720
-#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531
+#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759
+#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570
#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153
-#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942
-#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743
+#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938
+#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743
#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478
msgid "Description"
msgstr "描述信息"
@@ -323,7 +324,7 @@ msgid "parent"
msgstr "上级项"
#: InvenTree/models.py:560 InvenTree/models.py:561
-#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430
+#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430
msgid "Path"
msgstr ""
@@ -335,7 +336,7 @@ msgstr "服务器错误"
msgid "An error has been logged by the server."
msgstr "服务器记录了一个错误。"
-#: InvenTree/serializers.py:55 part/models.py:2699
+#: InvenTree/serializers.py:55 part/models.py:2746
msgid "Must be a valid number"
msgstr "必须是有效数字"
@@ -541,7 +542,7 @@ msgid "Returned"
msgstr "已退回"
#: InvenTree/status_codes.py:141 order/models.py:1128
-#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679
+#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718
msgid "Shipped"
msgstr "已发货"
@@ -728,7 +729,7 @@ msgstr "上级生产选项无效"
#: 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:731
+#: templates/js/translated/build.js:763
msgid "Build Order"
msgstr "生产订单"
@@ -747,14 +748,14 @@ msgid "Build Order Reference"
msgstr "相关生产订单"
#: build/models.py:166 order/models.py:240 order/models.py:623
-#: order/models.py:904 part/models.py:2617
+#: order/models.py:904 part/models.py:2664
#: part/templates/part/upload_bom.html:54
#: report/templates/report/inventree_po_report.html:91
#: report/templates/report/inventree_so_report.html:92
-#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855
-#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983
-#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523
-#: templates/js/translated/order.js:4031
+#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853
+#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022
+#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562
+#: templates/js/translated/order.js:4070
msgid "Reference"
msgstr "引用"
@@ -762,7 +763,7 @@ msgstr "引用"
msgid "Brief description of the build"
msgstr "生产的简短描述."
-#: build/models.py:185 build/templates/build/build_base.html:169
+#: build/models.py:185 build/templates/build/build_base.html:172
#: build/templates/build/detail.html:87
msgid "Parent Build"
msgstr "上级生产"
@@ -771,13 +772,13 @@ msgstr "上级生产"
msgid "BuildOrder to which this build is allocated"
msgstr "此次生产匹配的订单"
-#: build/models.py:191 build/templates/build/build_base.html:77
+#: build/models.py:191 build/templates/build/build_base.html:80
#: build/templates/build/detail.html:29 company/models.py:670
#: order/models.py:1001 order/models.py:1112 order/models.py:1113
-#: part/models.py:343 part/models.py:2146 part/models.py:2161
-#: part/models.py:2180 part/models.py:2198 part/models.py:2297
-#: part/models.py:2417 part/models.py:2507 part/models.py:2592
-#: part/models.py:2868 part/serializers.py:813
+#: part/models.py:343 part/models.py:2193 part/models.py:2208
+#: part/models.py:2227 part/models.py:2245 part/models.py:2344
+#: part/models.py:2464 part/models.py:2554 part/models.py:2639
+#: part/models.py:2915 part/serializers.py:813
#: part/templates/part/part_app_base.html:8
#: part/templates/part/part_pricing.html:12
#: part/templates/part/upload_bom.html:52
@@ -789,17 +790,17 @@ msgstr "此次生产匹配的订单"
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:16
#: templates/email/overdue_build_order.html:16
-#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553
-#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802
-#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649
-#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476
+#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552
+#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800
+#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681
+#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509
#: templates/js/translated/company.js:266
#: templates/js/translated/company.js:496
#: templates/js/translated/company.js:608
-#: templates/js/translated/company.js:868 templates/js/translated/order.js:103
-#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387
-#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885
-#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507
+#: templates/js/translated/company.js:868 templates/js/translated/order.js:104
+#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426
+#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924
+#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546
#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210
#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586
#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958
@@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated"
msgstr "此次生产匹配的销售订单"
#: build/models.py:213 build/serializers.py:800
-#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873
+#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912
msgid "Source Location"
msgstr "来源地点"
@@ -862,7 +863,7 @@ msgid "Build status code"
msgstr "生产状态代码"
#: build/models.py:251 build/serializers.py:225 order/serializers.py:447
-#: stock/models.py:662 templates/js/translated/order.js:1247
+#: stock/models.py:662 templates/js/translated/order.js:1286
msgid "Batch Code"
msgstr "批量代码"
@@ -871,7 +872,7 @@ msgid "Batch code for this build output"
msgstr "此生产产出的批量代码"
#: build/models.py:258 order/models.py:86 part/models.py:938
-#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544
+#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583
msgid "Creation Date"
msgstr "创建日期"
@@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生产完成的目标日期。生产将在此日期之后逾期。"
#: build/models.py:266 order/models.py:286
-#: templates/js/translated/build.js:2553
+#: templates/js/translated/build.js:2586
msgid "Completion Date"
msgstr "完成日期:"
@@ -892,7 +893,7 @@ msgstr "完成日期:"
msgid "completed by"
msgstr "完成人"
-#: build/models.py:280 templates/js/translated/build.js:2521
+#: build/models.py:280 templates/js/translated/build.js:2554
msgid "Issued by"
msgstr "发布者"
@@ -900,12 +901,12 @@ msgstr "发布者"
msgid "User who issued this build order"
msgstr "发布此生产订单的用户"
-#: build/models.py:289 build/templates/build/build_base.html:190
+#: build/models.py:289 build/templates/build/build_base.html:193
#: build/templates/build/detail.html:115 order/models.py:100
#: order/templates/order/order_base.html:176
#: order/templates/order/sales_order_base.html:183 part/models.py:942
#: report/templates/report/inventree_build_order_base.html:158
-#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754
+#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793
msgid "Responsible"
msgstr "责任人"
@@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM"
msgstr "在BOM中找不到选定的库存项"
#: build/models.py:1328 stock/templates/stock/item_base.html:177
-#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455
+#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488
#: templates/navbar.html:38
msgid "Build"
msgstr "生产"
@@ -986,11 +987,11 @@ msgstr "生产以分配部件"
#: stock/serializers.py:882 stock/templates/stock/item_base.html:10
#: stock/templates/stock/item_base.html:23
#: stock/templates/stock/item_base.html:199
-#: templates/js/translated/build.js:741 templates/js/translated/build.js:746
-#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638
-#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886
-#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193
-#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380
+#: templates/js/translated/build.js:773 templates/js/translated/build.js:778
+#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671
+#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925
+#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232
+#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419
#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752
#: templates/js/translated/stock.js:2577
msgid "Stock Item"
@@ -1001,13 +1002,13 @@ msgid "Source stock item"
msgstr "源库存项"
#: build/models.py:1358 build/serializers.py:193
-#: build/templates/build/build_base.html:82
+#: build/templates/build/build_base.html:85
#: build/templates/build/detail.html:34 common/models.py:1697
#: company/templates/company/supplier_part.html:279 order/models.py:897
#: order/models.py:1423 order/serializers.py:1155
#: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40
-#: part/models.py:2608 part/templates/part/detail.html:937
-#: part/templates/part/detail.html:1023
+#: part/models.py:2655 part/templates/part/detail.html:951
+#: part/templates/part/detail.html:1037
#: part/templates/part/part_pricing.html:16
#: part/templates/part/upload_bom.html:53
#: report/templates/report/inventree_build_order_base.html:113
@@ -1018,20 +1019,20 @@ msgstr "源库存项"
#: stock/serializers.py:293 stock/templates/stock/item_base.html:292
#: stock/templates/stock/item_base.html:300
#: templates/email/build_order_completed.html:18
-#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693
-#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426
-#: templates/js/translated/build.js:578 templates/js/translated/build.js:768
-#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675
-#: templates/js/translated/build.js:2088
+#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691
+#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458
+#: templates/js/translated/build.js:610 templates/js/translated/build.js:800
+#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707
+#: templates/js/translated/build.js:2121
#: templates/js/translated/model_renderers.js:120
-#: templates/js/translated/order.js:120 templates/js/translated/order.js:937
-#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190
-#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207
-#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386
-#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037
-#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156
-#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421
-#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458
+#: templates/js/translated/order.js:121 templates/js/translated/order.js:976
+#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229
+#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425
+#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076
+#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152
+#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636
+#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458
#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782
#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711
msgid "Quantity"
@@ -1050,7 +1051,7 @@ msgid "Destination stock item"
msgstr "目标库存项"
#: build/serializers.py:138 build/serializers.py:674
-#: templates/js/translated/build.js:1166
+#: templates/js/translated/build.js:1198
msgid "Build Output"
msgstr "生产产出"
@@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa
msgstr "需要整数型数值,因为BOM包含可追踪的部件"
#: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159
-#: stock/serializers.py:311 templates/js/translated/order.js:1258
+#: stock/serializers.py:311 templates/js/translated/order.js:1297
#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459
msgid "Serial Numbers"
msgstr "序列号"
@@ -1120,10 +1121,10 @@ msgstr "必须提供生产产出列表"
#: stock/serializers.py:917 stock/serializers.py:1150
#: stock/templates/stock/item_base.html:390
#: templates/js/translated/barcode.js:436
-#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753
-#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285
-#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305
-#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394
+#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785
+#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324
+#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344
+#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433
#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588
#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960
#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518
@@ -1134,12 +1135,12 @@ msgstr "地点"
msgid "Location for completed build outputs"
msgstr "已完成生产产出的仓储地点"
-#: build/serializers.py:373 build/templates/build/build_base.html:142
+#: build/serializers.py:373 build/templates/build/build_base.html:145
#: build/templates/build/detail.html:62 order/models.py:642
#: order/serializers.py:465 stock/templates/stock/item_base.html:423
-#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505
-#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724
-#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829
+#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538
+#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763
+#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829
#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727
msgid "Status"
msgstr "状态"
@@ -1196,7 +1197,7 @@ msgstr "接受未分配的"
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "接受库存项未被完成分配至此生产订单"
-#: build/serializers.py:522 templates/js/translated/build.js:195
+#: build/serializers.py:522 templates/js/translated/build.js:227
msgid "Required stock has not been fully allocated"
msgstr "所需库存尚未完全分配"
@@ -1208,7 +1209,7 @@ msgstr "接受未完成"
msgid "Accept that the required number of build outputs have not been completed"
msgstr "接受所需的生产产出未完成"
-#: build/serializers.py:538 templates/js/translated/build.js:199
+#: build/serializers.py:538 templates/js/translated/build.js:231
msgid "Required build quantity has not been completed"
msgstr "所需生产数量尚未完成"
@@ -1216,8 +1217,8 @@ msgstr "所需生产数量尚未完成"
msgid "Build order has incomplete outputs"
msgstr "生产订单有未完成的产出"
-#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726
-#: part/models.py:2860
+#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773
+#: part/models.py:2907
msgid "BOM Item"
msgstr "BOM项"
@@ -1322,66 +1323,70 @@ msgid "Cancel Build"
msgstr "取消生产"
#: build/templates/build/build_base.html:59
+msgid "Duplicate Build"
+msgstr ""
+
+#: build/templates/build/build_base.html:62
msgid "Delete Build"
msgstr "删除生产"
-#: build/templates/build/build_base.html:64
-#: build/templates/build/build_base.html:65
+#: build/templates/build/build_base.html:67
+#: build/templates/build/build_base.html:68
msgid "Complete Build"
msgstr "生产完成"
-#: build/templates/build/build_base.html:87
+#: build/templates/build/build_base.html:90
msgid "Build Description"
msgstr ""
-#: build/templates/build/build_base.html:95
+#: build/templates/build/build_base.html:98
msgid "No build outputs have been created for this build order"
msgstr "针对此生产订单,尚未创建生产产出"
-#: build/templates/build/build_base.html:101
+#: build/templates/build/build_base.html:104
#, python-format
msgid "This Build Order is allocated to Sales Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:108
+#: build/templates/build/build_base.html:111
#, python-format
msgid "This Build Order is a child of Build Order %(link)s"
msgstr ""
-#: build/templates/build/build_base.html:115
+#: build/templates/build/build_base.html:118
msgid "Build Order is ready to mark as completed"
msgstr ""
-#: build/templates/build/build_base.html:120
+#: build/templates/build/build_base.html:123
msgid "Build Order cannot be completed as outstanding outputs remain"
msgstr ""
-#: build/templates/build/build_base.html:125
+#: build/templates/build/build_base.html:128
msgid "Required build quantity has not yet been completed"
msgstr "所需生产数量尚未完成"
-#: build/templates/build/build_base.html:130
+#: build/templates/build/build_base.html:133
msgid "Stock has not been fully allocated to this Build Order"
msgstr ""
-#: build/templates/build/build_base.html:151
+#: build/templates/build/build_base.html:154
#: build/templates/build/detail.html:131 order/models.py:910
#: order/templates/order/order_base.html:162
#: order/templates/order/sales_order_base.html:164
#: report/templates/report/inventree_build_order_base.html:125
-#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741
-#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552
-#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042
+#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780
+#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591
+#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042
msgid "Target Date"
msgstr "预计日期"
-#: build/templates/build/build_base.html:156
+#: build/templates/build/build_base.html:159
#, python-format
msgid "This build was due on %(target)s"
msgstr "此次生产的截止日期为 %(target)s"
-#: build/templates/build/build_base.html:156
-#: build/templates/build/build_base.html:201
+#: build/templates/build/build_base.html:159
+#: build/templates/build/build_base.html:204
#: order/templates/order/order_base.html:98
#: order/templates/order/sales_order_base.html:94
#: templates/js/translated/table_filters.js:320
@@ -1390,14 +1395,14 @@ msgstr "此次生产的截止日期为 %(target)s"
msgid "Overdue"
msgstr "逾期"
-#: build/templates/build/build_base.html:163
+#: build/templates/build/build_base.html:166
#: build/templates/build/detail.html:67 build/templates/build/detail.html:142
#: order/templates/order/sales_order_base.html:171
#: templates/js/translated/table_filters.js:400
msgid "Completed"
msgstr "已完成"
-#: build/templates/build/build_base.html:176
+#: build/templates/build/build_base.html:179
#: build/templates/build/detail.html:94 order/models.py:1105
#: order/models.py:1199 order/models.py:1330
#: order/templates/order/sales_order_base.html:9
@@ -1406,17 +1411,17 @@ msgstr "已完成"
#: report/templates/report/inventree_so_report.html:77
#: stock/templates/stock/item_base.html:370
#: templates/email/overdue_sales_order.html:15
-#: templates/js/translated/order.js:2498
+#: templates/js/translated/order.js:2537
msgid "Sales Order"
msgstr "销售订单"
-#: build/templates/build/build_base.html:183
+#: build/templates/build/build_base.html:186
#: build/templates/build/detail.html:108
#: report/templates/report/inventree_build_order_base.html:152
msgid "Issued By"
msgstr "发布者"
-#: build/templates/build/build_base.html:245
+#: build/templates/build/build_base.html:256
msgid "Delete Build Order"
msgstr "删除生产订单"
@@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location."
msgstr ""
#: build/templates/build/detail.html:49 order/models.py:1023
-#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093
+#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132
msgid "Destination"
msgstr ""
@@ -1447,7 +1452,7 @@ msgstr ""
#: build/templates/build/detail.html:80
#: stock/templates/stock/item_base.html:170
-#: templates/js/translated/build.js:1182
+#: templates/js/translated/build.js:1214
#: templates/js/translated/model_renderers.js:124
#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843
#: templates/js/translated/stock.js:2734
@@ -1459,7 +1464,7 @@ msgstr ""
#: build/templates/build/detail.html:126
#: order/templates/order/order_base.html:149
#: order/templates/order/sales_order_base.html:158
-#: templates/js/translated/build.js:2513
+#: templates/js/translated/build.js:2546
msgid "Created"
msgstr "已创建"
@@ -1479,7 +1484,7 @@ msgstr "子生产订单"
msgid "Allocate Stock to Build"
msgstr "为生产分配库存"
-#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901
+#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934
msgid "Unallocate stock"
msgstr "未分配库存"
@@ -1510,7 +1515,7 @@ msgstr "订单所需部件"
#: build/templates/build/detail.html:187
#: company/templates/company/detail.html:37
#: company/templates/company/detail.html:85
-#: part/templates/part/category.html:183 templates/js/translated/order.js:977
+#: part/templates/part/category.html:183 templates/js/translated/order.js:1016
msgid "Order Parts"
msgstr "订购商品"
@@ -1582,7 +1587,7 @@ msgstr ""
#: order/templates/order/po_sidebar.html:9
#: order/templates/order/purchase_order_detail.html:82
#: order/templates/order/sales_order_detail.html:135
-#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207
+#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212
#: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117
#: stock/templates/stock/stock_sidebar.html:23
msgid "Attachments"
@@ -1600,7 +1605,7 @@ msgstr ""
msgid "All untracked stock items have been allocated"
msgstr ""
-#: build/templates/build/index.html:18 part/templates/part/detail.html:313
+#: build/templates/build/index.html:18 part/templates/part/detail.html:318
msgid "New Build Order"
msgstr "新建生产订单"
@@ -1845,7 +1850,7 @@ msgstr ""
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/models.py:951 part/models.py:2419 report/models.py:158
+#: common/models.py:951 part/models.py:2466 report/models.py:158
#: templates/js/translated/table_filters.js:38
#: templates/js/translated/table_filters.js:484
msgid "Template"
@@ -1855,7 +1860,7 @@ msgstr "模板"
msgid "Parts are templates by default"
msgstr ""
-#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448
+#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446
#: templates/js/translated/table_filters.js:176
#: templates/js/translated/table_filters.js:447
msgid "Assembly"
@@ -2591,7 +2596,7 @@ msgstr ""
#: common/models.py:1705 company/serializers.py:366
#: company/templates/company/supplier_part.html:284 order/models.py:938
-#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161
+#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157
msgid "Price"
msgstr "价格"
@@ -2830,7 +2835,7 @@ msgstr "该公司使用的默认货币"
#: company/models.py:248 company/models.py:481 stock/models.py:598
#: stock/serializers.py:87 stock/templates/stock/item_base.html:148
-#: templates/js/translated/bom.js:543
+#: templates/js/translated/bom.js:542
msgid "Base Part"
msgstr ""
@@ -2859,7 +2864,7 @@ msgstr "选择制造商"
#: templates/js/translated/company.js:269
#: templates/js/translated/company.js:497
#: templates/js/translated/company.js:649
-#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971
+#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010
#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027
msgid "MPN"
msgstr ""
@@ -2899,7 +2904,7 @@ msgstr "数值"
msgid "Parameter value"
msgstr "参数值"
-#: company/models.py:372 part/models.py:888 part/models.py:2386
+#: company/models.py:372 part/models.py:888 part/models.py:2433
#: part/templates/part/part_base.html:280
#: templates/InvenTree/settings/settings.html:352
#: templates/js/translated/company.js:770 templates/js/translated/part.js:855
@@ -2921,7 +2926,7 @@ msgstr ""
#: templates/email/overdue_purchase_order.html:16
#: templates/js/translated/company.js:268
#: templates/js/translated/company.js:401
-#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707
+#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746
#: templates/js/translated/part.js:217 templates/js/translated/part.js:995
#: templates/js/translated/table_filters.js:423
msgid "Supplier"
@@ -2933,7 +2938,7 @@ msgstr "选择供应商"
#: company/models.py:497 company/templates/company/supplier_part.html:118
#: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267
-#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228
+#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228
#: templates/js/translated/part.js:1013
msgid "SKU"
msgstr ""
@@ -2955,17 +2960,17 @@ msgid "Supplier part description"
msgstr "供应商商品描述"
#: company/models.py:522 company/templates/company/supplier_part.html:146
-#: part/models.py:2620 part/templates/part/upload_bom.html:59
+#: part/models.py:2667 part/templates/part/upload_bom.html:59
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401
msgid "Note"
msgstr "备注"
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "base cost"
msgstr ""
-#: company/models.py:526 part/models.py:1742
+#: company/models.py:526 part/models.py:1789
msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低收费(例如库存费)"
@@ -2979,7 +2984,7 @@ msgstr "打包"
msgid "Part packaging"
msgstr "商品打包"
-#: company/models.py:530 part/models.py:1744
+#: company/models.py:530 part/models.py:1791
msgid "multiple"
msgstr ""
@@ -2990,8 +2995,8 @@ msgstr ""
#: company/models.py:538 company/templates/company/supplier_part.html:94
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:18
-#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789
-#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979
+#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821
+#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979
#: templates/js/translated/part.js:600 templates/js/translated/part.js:603
#: templates/js/translated/table_filters.js:186
msgid "Available"
@@ -3028,7 +3033,7 @@ msgid "Company"
msgstr "公司"
#: company/templates/company/company_base.html:22
-#: templates/js/translated/order.js:540
+#: templates/js/translated/order.js:579
msgid "Create Purchase Order"
msgstr "创建采购订单"
@@ -3069,7 +3074,7 @@ msgstr "从 URL 下载图片"
#: stock/models.py:644 stock/serializers.py:811
#: stock/templates/stock/item_base.html:401
#: templates/email/overdue_sales_order.html:16
-#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513
+#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552
#: templates/js/translated/stock.js:2559
#: templates/js/translated/table_filters.js:427
msgid "Customer"
@@ -3105,7 +3110,7 @@ msgstr "创建新的供应商商品"
#: company/templates/company/detail.html:19
#: company/templates/company/manufacturer_part.html:123
-#: part/templates/part/detail.html:354
+#: part/templates/part/detail.html:359
msgid "New Supplier Part"
msgstr "新建供应商商品"
@@ -3134,7 +3139,7 @@ msgstr "制造商商品"
msgid "Create new manufacturer part"
msgstr "新建制造商商品"
-#: company/templates/company/detail.html:66 part/templates/part/detail.html:384
+#: company/templates/company/detail.html:66 part/templates/part/detail.html:389
msgid "New Manufacturer Part"
msgstr "新建制造商商品"
@@ -3148,7 +3153,7 @@ msgstr "供货商库存"
#: order/templates/order/order_base.html:13
#: order/templates/order/purchase_orders.html:8
#: order/templates/order/purchase_orders.html:12
-#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37
+#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37
#: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198
#: templates/InvenTree/settings/sidebar.html:49
#: templates/js/translated/search.js:275 templates/navbar.html:50
@@ -3171,7 +3176,7 @@ msgstr "新建采购订单"
#: order/templates/order/sales_order_base.html:13
#: order/templates/order/sales_orders.html:8
#: order/templates/order/sales_orders.html:15
-#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41
+#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41
#: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218
#: templates/InvenTree/settings/sidebar.html:51
#: templates/js/translated/search.js:299 templates/navbar.html:61
@@ -3190,7 +3195,7 @@ msgid "New Sales Order"
msgstr "新建销售订单"
#: company/templates/company/detail.html:168
-#: templates/js/translated/build.js:1660
+#: templates/js/translated/build.js:1692
msgid "Assigned Stock"
msgstr ""
@@ -3206,7 +3211,7 @@ msgstr "制造商"
#: company/templates/company/manufacturer_part.html:35
#: company/templates/company/supplier_part.html:186
-#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80
+#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80
msgid "Order part"
msgstr "订购商品"
@@ -3237,13 +3242,13 @@ msgid "Suppliers"
msgstr "供应商"
#: company/templates/company/manufacturer_part.html:136
-#: part/templates/part/detail.html:365
+#: part/templates/part/detail.html:370
msgid "Delete supplier parts"
msgstr "删除供应商商品"
#: company/templates/company/manufacturer_part.html:136
#: company/templates/company/manufacturer_part.html:183
-#: part/templates/part/detail.html:366 part/templates/part/detail.html:396
+#: part/templates/part/detail.html:371 part/templates/part/detail.html:401
#: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33
#: users/models.py:220
msgid "Delete"
@@ -3252,12 +3257,12 @@ msgstr "删除"
#: company/templates/company/manufacturer_part.html:166
#: company/templates/company/manufacturer_part_sidebar.html:5
#: part/templates/part/category_sidebar.html:19
-#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8
+#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8
msgid "Parameters"
msgstr "参数"
#: company/templates/company/manufacturer_part.html:170
-#: part/templates/part/detail.html:186
+#: part/templates/part/detail.html:191
#: templates/InvenTree/settings/category.html:12
#: templates/InvenTree/settings/part.html:68
msgid "New Parameter"
@@ -3268,7 +3273,7 @@ msgid "Delete parameters"
msgstr "删除参数"
#: company/templates/company/manufacturer_part.html:245
-#: part/templates/part/detail.html:826
+#: part/templates/part/detail.html:840
msgid "Add Parameter"
msgstr "添加参数"
@@ -3291,7 +3296,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:7
#: company/templates/company/supplier_part.html:24 stock/models.py:607
#: stock/templates/stock/item_base.html:238
-#: templates/js/translated/company.js:909 templates/js/translated/order.js:935
+#: templates/js/translated/company.js:909 templates/js/translated/order.js:974
#: templates/js/translated/stock.js:1933
msgid "Supplier Part"
msgstr "供应商商品"
@@ -3303,7 +3308,7 @@ msgstr ""
#: company/templates/company/supplier_part.html:40
#: company/templates/company/supplier_part.html:41
#: company/templates/company/supplier_part.html:187
-#: part/templates/part/detail.html:83
+#: part/templates/part/detail.html:88
msgid "Order Part"
msgstr "订购商品"
@@ -3358,7 +3363,7 @@ msgstr "价格信息"
#: company/templates/company/supplier_part.html:212
#: company/templates/company/supplier_part.html:326
-#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233
+#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229
msgid "Add Price Break"
msgstr ""
@@ -3367,12 +3372,12 @@ msgid "No price break information found"
msgstr ""
#: company/templates/company/supplier_part.html:252
-#: templates/js/translated/part.js:2243
+#: templates/js/translated/part.js:2239
msgid "Delete Price Break"
msgstr ""
#: company/templates/company/supplier_part.html:266
-#: templates/js/translated/part.js:2257
+#: templates/js/translated/part.js:2253
msgid "Edit Price Break"
msgstr ""
@@ -3398,10 +3403,9 @@ msgstr ""
#: stock/templates/stock/stock_app_base.html:10
#: templates/InvenTree/search.html:151
#: templates/InvenTree/settings/sidebar.html:45
-#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751
-#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460
-#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754
-#: templates/navbar.html:31
+#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299
+#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959
+#: templates/js/translated/stock.js:1754 templates/navbar.html:31
msgid "Stock"
msgstr "库存"
@@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered"
msgstr "订购该商品的公司"
#: order/models.py:262 order/templates/order/order_base.html:124
-#: templates/js/translated/order.js:1716
+#: templates/js/translated/order.js:1755
msgid "Supplier Reference"
msgstr ""
@@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
#: order/models.py:652 order/models.py:1204
-#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722
+#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761
msgid "Shipment Date"
msgstr ""
@@ -3673,7 +3677,7 @@ msgstr ""
#: order/models.py:983 order/models.py:1063 order/models.py:1104
#: order/models.py:1198 order/models.py:1330
-#: templates/js/translated/order.js:3178
+#: templates/js/translated/order.js:3217
msgid "Order"
msgstr ""
@@ -3683,7 +3687,7 @@ msgstr ""
#: report/templates/report/inventree_po_report.html:76
#: stock/templates/stock/item_base.html:184
#: templates/email/overdue_purchase_order.html:15
-#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691
+#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730
#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913
#: templates/js/translated/stock.js:2540
msgid "Purchase Order"
@@ -3694,7 +3698,7 @@ msgid "Supplier part"
msgstr "供应商商品"
#: order/models.py:1009 order/templates/order/order_base.html:169
-#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073
+#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112
#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091
#: templates/js/translated/table_filters.js:338
msgid "Received"
@@ -3880,11 +3884,11 @@ msgstr ""
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:448 templates/js/translated/order.js:1248
+#: order/serializers.py:448 templates/js/translated/order.js:1287
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:456 templates/js/translated/order.js:1259
+#: order/serializers.py:456 templates/js/translated/order.js:1298
msgid "Enter serial numbers for incoming stock items"
msgstr ""
@@ -4061,10 +4065,6 @@ msgstr ""
msgid "Total cost could not be calculated"
msgstr ""
-#: order/templates/order/order_base.html:243
-msgid "Edit Purchase Order"
-msgstr ""
-
#: order/templates/order/order_wizard/match_parts.html:12
#: part/templates/part/import_wizard/ajax_match_references.html:12
#: part/templates/part/import_wizard/match_references.html:12
@@ -4091,10 +4091,10 @@ msgstr "选择供应商商品"
#: part/templates/part/import_wizard/ajax_match_fields.html:64
#: part/templates/part/import_wizard/ajax_match_references.html:42
#: part/templates/part/import_wizard/match_references.html:49
-#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431
-#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974
-#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337
-#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625
+#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463
+#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007
+#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376
+#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625
#: templates/js/translated/stock.js:793
#: templates/patterns/wizard/match_fields.html:70
msgid "Remove row"
@@ -4130,7 +4130,7 @@ msgstr ""
#: order/templates/order/purchase_order_detail.html:26
#: order/templates/order/sales_order_detail.html:22
#: order/templates/order/sales_order_detail.html:255
-#: templates/js/translated/order.js:557
+#: templates/js/translated/order.js:596
msgid "Add Line Item"
msgstr ""
@@ -4176,7 +4176,7 @@ msgid "Print packing list"
msgstr ""
#: order/templates/order/sales_order_base.html:60
-#: templates/js/translated/order.js:229
+#: templates/js/translated/order.js:230
msgid "Complete Shipments"
msgstr ""
@@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated"
msgstr ""
#: order/templates/order/sales_order_base.html:123
-#: templates/js/translated/order.js:2526
+#: templates/js/translated/order.js:2565
msgid "Customer Reference"
msgstr ""
@@ -4214,8 +4214,8 @@ msgid "Pending Shipments"
msgstr ""
#: order/templates/order/sales_order_detail.html:72
-#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110
-#: templates/js/translated/build.js:1882
+#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108
+#: templates/js/translated/build.js:1915
msgid "Actions"
msgstr ""
@@ -4257,35 +4257,35 @@ msgstr ""
msgid "Stock produced by Build Order"
msgstr ""
-#: part/api.py:584
+#: part/api.py:621
msgid "Stock required for Build Order"
msgstr ""
-#: part/api.py:704
+#: part/api.py:758
msgid "Valid"
msgstr ""
-#: part/api.py:705
+#: part/api.py:759
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/api.py:711
+#: part/api.py:765
msgid "This option must be selected"
msgstr ""
-#: part/api.py:1134
+#: part/api.py:1188
msgid "Must be greater than zero"
msgstr "必须大于0"
-#: part/api.py:1138
+#: part/api.py:1192
msgid "Must be a valid quantity"
msgstr "必须是有效的数量"
-#: part/api.py:1153
+#: part/api.py:1207
msgid "Specify location for initial part stock"
msgstr "指定初始初始商品仓储地点"
-#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207
+#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261
msgid "This field is required"
msgstr "此字段为必填"
@@ -4299,14 +4299,14 @@ msgid "Total Stock"
msgstr ""
#: part/bom.py:129 part/templates/part/part_base.html:189
-#: templates/js/translated/order.js:3618
+#: templates/js/translated/order.js:3657
msgid "Available Stock"
msgstr "可用库存"
#: part/bom.py:130 part/templates/part/part_base.html:207
-#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590
+#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590
#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302
-#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490
+#: templates/js/translated/part.js:1483
#: templates/js/translated/table_filters.js:68
msgid "On Order"
msgstr ""
@@ -4335,7 +4335,7 @@ msgstr ""
msgid "Icon (optional)"
msgstr ""
-#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16
+#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16
#: part/templates/part/part_app_base.html:10
msgid "Part Category"
msgstr "商品类别"
@@ -4352,7 +4352,7 @@ msgstr "商品类别"
#: part/templates/part/category_sidebar.html:9
#: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82
#: templates/InvenTree/settings/sidebar.html:41
-#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144
+#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144
#: templates/navbar.html:24 users/models.py:38
msgid "Parts"
msgstr "商品"
@@ -4382,7 +4382,7 @@ msgstr ""
msgid "Duplicate IPN not allowed in part settings"
msgstr "在商品设置中不允许重复的IPN"
-#: part/models.py:745 part/models.py:2516
+#: part/models.py:745 part/models.py:2563
msgid "Part name"
msgstr "商品名称"
@@ -4415,11 +4415,11 @@ msgstr "关键词"
msgid "Part keywords to improve visibility in search results"
msgstr "提高搜索结果可见性的关键字"
-#: part/models.py:783 part/models.py:2218 part/models.py:2461
+#: part/models.py:783 part/models.py:2265 part/models.py:2508
#: part/templates/part/part_base.html:257
#: templates/InvenTree/settings/settings.html:232
#: templates/js/translated/notification.js:50
-#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668
+#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664
msgid "Category"
msgstr "类别"
@@ -4530,245 +4530,245 @@ msgstr ""
msgid "Creation User"
msgstr "新建用户"
-#: part/models.py:1744
+#: part/models.py:1791
msgid "Sell multiple"
msgstr ""
-#: part/models.py:2265
+#: part/models.py:2312
msgid "Test templates can only be created for trackable parts"
msgstr ""
-#: part/models.py:2282
+#: part/models.py:2329
msgid "Test with this name already exists for this part"
msgstr ""
-#: part/models.py:2302 templates/js/translated/part.js:2006
+#: part/models.py:2349 templates/js/translated/part.js:2002
#: templates/js/translated/stock.js:1340
msgid "Test Name"
msgstr ""
-#: part/models.py:2303
+#: part/models.py:2350
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:2308
+#: part/models.py:2355
msgid "Test Description"
msgstr ""
-#: part/models.py:2309
+#: part/models.py:2356
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:2314 templates/js/translated/part.js:2015
+#: part/models.py:2361 templates/js/translated/part.js:2011
#: templates/js/translated/table_filters.js:302
msgid "Required"
msgstr ""
-#: part/models.py:2315
+#: part/models.py:2362
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:2320 templates/js/translated/part.js:2023
+#: part/models.py:2367 templates/js/translated/part.js:2019
msgid "Requires Value"
msgstr ""
-#: part/models.py:2321
+#: part/models.py:2368
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:2326 templates/js/translated/part.js:2030
+#: part/models.py:2373 templates/js/translated/part.js:2026
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:2327
+#: part/models.py:2374
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:2335
+#: part/models.py:2382
#, python-brace-format
msgid "Illegal character in template name ({c})"
msgstr ""
-#: part/models.py:2371
+#: part/models.py:2418
msgid "Parameter template name must be unique"
msgstr ""
-#: part/models.py:2379
+#: part/models.py:2426
msgid "Parameter Name"
msgstr ""
-#: part/models.py:2386
+#: part/models.py:2433
msgid "Parameter Units"
msgstr ""
-#: part/models.py:2417
+#: part/models.py:2464
msgid "Parent Part"
msgstr ""
-#: part/models.py:2419 part/models.py:2467 part/models.py:2468
+#: part/models.py:2466 part/models.py:2514 part/models.py:2515
#: templates/InvenTree/settings/settings.html:227
msgid "Parameter Template"
msgstr "参数模板"
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Data"
msgstr ""
-#: part/models.py:2421
+#: part/models.py:2468
msgid "Parameter Value"
msgstr ""
-#: part/models.py:2472 templates/InvenTree/settings/settings.html:236
+#: part/models.py:2519 templates/InvenTree/settings/settings.html:236
msgid "Default Value"
msgstr "默认值"
-#: part/models.py:2473
+#: part/models.py:2520
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:2508
+#: part/models.py:2555
msgid "Part ID or part name"
msgstr ""
-#: part/models.py:2511 templates/js/translated/model_renderers.js:212
+#: part/models.py:2558 templates/js/translated/model_renderers.js:212
msgid "Part ID"
msgstr "商品ID"
-#: part/models.py:2512
+#: part/models.py:2559
msgid "Unique part ID value"
msgstr ""
-#: part/models.py:2515
+#: part/models.py:2562
msgid "Part Name"
msgstr ""
-#: part/models.py:2519
+#: part/models.py:2566
msgid "Part IPN"
msgstr ""
-#: part/models.py:2520
+#: part/models.py:2567
msgid "Part IPN value"
msgstr ""
-#: part/models.py:2523
+#: part/models.py:2570
msgid "Level"
msgstr ""
-#: part/models.py:2524
+#: part/models.py:2571
msgid "BOM level"
msgstr ""
-#: part/models.py:2593
+#: part/models.py:2640
msgid "Select parent part"
msgstr ""
-#: part/models.py:2601
+#: part/models.py:2648
msgid "Sub part"
msgstr ""
-#: part/models.py:2602
+#: part/models.py:2649
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:2608
+#: part/models.py:2655
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:2610 part/templates/part/upload_bom.html:58
-#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999
+#: part/models.py:2657 part/templates/part/upload_bom.html:58
+#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997
#: templates/js/translated/table_filters.js:100
msgid "Optional"
msgstr "可选项"
-#: part/models.py:2610
+#: part/models.py:2657
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:2613 part/templates/part/upload_bom.html:55
+#: part/models.py:2660 part/templates/part/upload_bom.html:55
msgid "Overage"
msgstr ""
-#: part/models.py:2614
+#: part/models.py:2661
msgid "Estimated build wastage quantity (absolute or percentage)"
msgstr ""
-#: part/models.py:2617
+#: part/models.py:2664
msgid "BOM item reference"
msgstr ""
-#: part/models.py:2620
+#: part/models.py:2667
msgid "BOM item notes"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "Checksum"
msgstr ""
-#: part/models.py:2622
+#: part/models.py:2669
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:2626 part/templates/part/upload_bom.html:57
-#: templates/js/translated/bom.js:1016
+#: part/models.py:2673 part/templates/part/upload_bom.html:57
+#: templates/js/translated/bom.js:1014
#: templates/js/translated/table_filters.js:76
#: templates/js/translated/table_filters.js:96
msgid "Inherited"
msgstr "继承项"
-#: part/models.py:2627
+#: part/models.py:2674
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:2632 part/templates/part/upload_bom.html:56
-#: templates/js/translated/bom.js:1008
+#: part/models.py:2679 part/templates/part/upload_bom.html:56
+#: templates/js/translated/bom.js:1006
msgid "Allow Variants"
msgstr ""
-#: part/models.py:2633
+#: part/models.py:2680
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:2711 stock/models.py:468
+#: part/models.py:2758 stock/models.py:468
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:2720 part/models.py:2722
+#: part/models.py:2767 part/models.py:2769
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:2827
+#: part/models.py:2874
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:2848
+#: part/models.py:2895
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:2861
+#: part/models.py:2908
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:2869
+#: part/models.py:2916
msgid "Substitute part"
msgstr ""
-#: part/models.py:2884
+#: part/models.py:2931
msgid "Part 1"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Part 2"
msgstr ""
-#: part/models.py:2888
+#: part/models.py:2935
msgid "Select Related Part"
msgstr ""
-#: part/models.py:2906
+#: part/models.py:2953
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:2910
+#: part/models.py:2957
msgid "Duplicate relationship already exists"
msgstr ""
@@ -4876,7 +4876,7 @@ msgstr ""
msgid "The BOM for %(part)s has not been validated."
msgstr ""
-#: part/templates/part/bom.html:30 part/templates/part/detail.html:264
+#: part/templates/part/bom.html:30 part/templates/part/detail.html:269
msgid "BOM actions"
msgstr ""
@@ -4945,8 +4945,8 @@ msgstr "新建商品"
msgid "New Part"
msgstr "新商品"
-#: part/templates/part/category.html:174 part/templates/part/detail.html:363
-#: part/templates/part/detail.html:394
+#: part/templates/part/category.html:174 part/templates/part/detail.html:368
+#: part/templates/part/detail.html:399
msgid "Options"
msgstr "选项"
@@ -5014,138 +5014,146 @@ msgstr ""
msgid "Part Stock"
msgstr "商品库存"
-#: part/templates/part/detail.html:54
-msgid "Part Test Templates"
+#: part/templates/part/detail.html:44
+msgid "Refresh scheduling data"
+msgstr ""
+
+#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558
+msgid "Refresh"
msgstr ""
#: part/templates/part/detail.html:59
+msgid "Part Test Templates"
+msgstr ""
+
+#: part/templates/part/detail.html:64
msgid "Add Test Template"
msgstr ""
-#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53
+#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53
msgid "Sales Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:138
+#: part/templates/part/detail.html:143
msgid "Part Notes"
msgstr ""
-#: part/templates/part/detail.html:153
+#: part/templates/part/detail.html:158
msgid "Part Variants"
msgstr ""
-#: part/templates/part/detail.html:157
+#: part/templates/part/detail.html:162
msgid "Create new variant"
msgstr ""
-#: part/templates/part/detail.html:158
+#: part/templates/part/detail.html:163
msgid "New Variant"
msgstr ""
-#: part/templates/part/detail.html:185
+#: part/templates/part/detail.html:190
msgid "Add new parameter"
msgstr ""
-#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54
+#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54
msgid "Related Parts"
msgstr ""
-#: part/templates/part/detail.html:226 part/templates/part/detail.html:227
+#: part/templates/part/detail.html:231 part/templates/part/detail.html:232
msgid "Add Related"
msgstr ""
-#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17
+#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17
msgid "Bill of Materials"
msgstr ""
-#: part/templates/part/detail.html:252
+#: part/templates/part/detail.html:257
msgid "Export actions"
msgstr ""
-#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284
+#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284
msgid "Export BOM"
msgstr ""
-#: part/templates/part/detail.html:258
+#: part/templates/part/detail.html:263
msgid "Print BOM Report"
msgstr ""
-#: part/templates/part/detail.html:268
+#: part/templates/part/detail.html:273
msgid "Upload BOM"
msgstr ""
-#: part/templates/part/detail.html:269 templates/js/translated/part.js:274
+#: part/templates/part/detail.html:274 templates/js/translated/part.js:274
msgid "Copy BOM"
msgstr ""
-#: part/templates/part/detail.html:270
+#: part/templates/part/detail.html:275
msgid "Validate BOM"
msgstr ""
-#: part/templates/part/detail.html:275
+#: part/templates/part/detail.html:280
msgid "New BOM Item"
msgstr ""
-#: part/templates/part/detail.html:276
+#: part/templates/part/detail.html:281
msgid "Add BOM Item"
msgstr ""
-#: part/templates/part/detail.html:289
+#: part/templates/part/detail.html:294
msgid "Assemblies"
msgstr ""
-#: part/templates/part/detail.html:307
+#: part/templates/part/detail.html:312
msgid "Part Builds"
msgstr ""
-#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38
+#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38
msgid "Build Order Allocations"
msgstr ""
-#: part/templates/part/detail.html:350
+#: part/templates/part/detail.html:355
msgid "Part Suppliers"
msgstr "商品供应商"
-#: part/templates/part/detail.html:380
+#: part/templates/part/detail.html:385
msgid "Part Manufacturers"
msgstr "商品制造商"
-#: part/templates/part/detail.html:396
+#: part/templates/part/detail.html:401
msgid "Delete manufacturer parts"
msgstr "删除制造商商品"
-#: part/templates/part/detail.html:612
+#: part/templates/part/detail.html:626
msgid "Create BOM Item"
msgstr ""
-#: part/templates/part/detail.html:656
+#: part/templates/part/detail.html:670
msgid "Related Part"
msgstr ""
-#: part/templates/part/detail.html:664
+#: part/templates/part/detail.html:678
msgid "Add Related Part"
msgstr ""
-#: part/templates/part/detail.html:756
+#: part/templates/part/detail.html:770
msgid "Add Test Result Template"
msgstr ""
-#: part/templates/part/detail.html:900
+#: part/templates/part/detail.html:914
#, python-format
msgid "Purchase Unit Price - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:912
+#: part/templates/part/detail.html:926
#, python-format
msgid "Unit Price-Cost Difference - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:924
+#: part/templates/part/detail.html:938
#, python-format
msgid "Supplier Unit Cost - %(currency)s"
msgstr ""
-#: part/templates/part/detail.html:1013
+#: part/templates/part/detail.html:1027
#, python-format
msgid "Unit Price - %(currency)s"
msgstr ""
@@ -5321,13 +5329,13 @@ msgstr ""
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037
+#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035
msgid "Can Build"
msgstr ""
#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593
#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306
-#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494
+#: templates/js/translated/part.js:1490
msgid "Building"
msgstr ""
@@ -5379,7 +5387,7 @@ msgid "Total Cost"
msgstr ""
#: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43
-#: templates/js/translated/bom.js:991
+#: templates/js/translated/bom.js:989
msgid "No supplier pricing available"
msgstr ""
@@ -5414,6 +5422,18 @@ msgstr ""
msgid "No pricing information is available for this part."
msgstr "此商品无价格信息可用。"
+#: part/templates/part/part_scheduling.html:13
+#: report/templates/report/inventree_test_report_base.html:97
+#: templates/InvenTree/settings/plugin.html:53
+#: templates/InvenTree/settings/plugin_settings.html:38
+#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468
+msgid "Date"
+msgstr ""
+
+#: part/templates/part/part_scheduling.html:14
+msgid "Scheduled Quantity"
+msgstr ""
+
#: part/templates/part/part_sidebar.html:11
msgid "Variants"
msgstr ""
@@ -5462,7 +5482,7 @@ msgstr ""
msgid "Calculation parameters"
msgstr ""
-#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985
+#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983
msgid "Supplier Cost"
msgstr ""
@@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part."
msgstr ""
#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616
-#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498
+#: templates/js/translated/part.js:1294
msgid "No Stock"
msgstr ""
@@ -5893,11 +5913,11 @@ msgstr ""
#: report/templates/report/inventree_test_report_base.html:79
#: stock/models.py:648 stock/templates/stock/item_base.html:322
-#: templates/js/translated/build.js:424 templates/js/translated/build.js:576
-#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673
+#: templates/js/translated/build.js:456 templates/js/translated/build.js:608
+#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705
#: templates/js/translated/model_renderers.js:118
-#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297
-#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490
+#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336
+#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490
msgid "Serial Number"
msgstr "序列号"
@@ -5915,13 +5935,6 @@ msgstr ""
msgid "Result"
msgstr ""
-#: report/templates/report/inventree_test_report_base.html:97
-#: templates/InvenTree/settings/plugin.html:53
-#: templates/InvenTree/settings/plugin_settings.html:38
-#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468
-msgid "Date"
-msgstr ""
-
#: report/templates/report/inventree_test_report_base.html:108
msgid "Pass"
msgstr ""
@@ -6519,7 +6532,7 @@ msgid "Available Quantity"
msgstr ""
#: stock/templates/stock/item_base.html:394
-#: templates/js/translated/build.js:1695
+#: templates/js/translated/build.js:1727
msgid "No location set"
msgstr "未设置仓储地点"
@@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock"
msgstr ""
#: templates/email/build_order_required_stock.html:18
-#: templates/js/translated/bom.js:1483
+#: templates/js/translated/bom.js:1481
msgid "Required Quantity"
msgstr ""
@@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part"
msgstr ""
#: templates/email/low_stock_notification.html:19
+#: templates/js/translated/part.js:2498
msgid "Minimum Quantity"
msgstr ""
@@ -7917,10 +7931,10 @@ msgstr ""
msgid "Row Data"
msgstr ""
-#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622
+#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620
#: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601
#: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003
-#: templates/js/translated/order.js:979 templates/modals.html:15
+#: templates/js/translated/order.js:1018 templates/modals.html:15
#: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50
msgid "Close"
msgstr ""
@@ -7930,12 +7944,12 @@ msgid "Download BOM Template"
msgstr ""
#: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287
-#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145
+#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145
msgid "Format"
msgstr ""
#: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288
-#: templates/js/translated/order.js:761
+#: templates/js/translated/order.js:800
msgid "Select file format"
msgstr ""
@@ -7991,390 +8005,390 @@ msgstr "在导出 BOM 中包含供应商数据"
msgid "Remove substitute part"
msgstr ""
-#: templates/js/translated/bom.js:567
+#: templates/js/translated/bom.js:565
msgid "Select and add a new substitute part using the input below"
msgstr ""
-#: templates/js/translated/bom.js:578
+#: templates/js/translated/bom.js:576
msgid "Are you sure you wish to remove this substitute part link?"
msgstr ""
-#: templates/js/translated/bom.js:584
+#: templates/js/translated/bom.js:582
msgid "Remove Substitute Part"
msgstr ""
-#: templates/js/translated/bom.js:623
+#: templates/js/translated/bom.js:621
msgid "Add Substitute"
msgstr ""
-#: templates/js/translated/bom.js:624
+#: templates/js/translated/bom.js:622
msgid "Edit BOM Item Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:686
+#: templates/js/translated/bom.js:684
msgid "All selected BOM items will be deleted"
msgstr ""
-#: templates/js/translated/bom.js:702
+#: templates/js/translated/bom.js:700
msgid "Delete selected BOM items?"
msgstr ""
-#: templates/js/translated/bom.js:821
+#: templates/js/translated/bom.js:819
msgid "Load BOM for subassembly"
msgstr ""
-#: templates/js/translated/bom.js:831
+#: templates/js/translated/bom.js:829
msgid "Substitutes Available"
msgstr ""
-#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771
+#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803
msgid "Variant stock allowed"
msgstr ""
-#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816
-#: templates/js/translated/order.js:3632
+#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849
+#: templates/js/translated/order.js:3671
msgid "No Stock Available"
msgstr ""
-#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820
+#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853
msgid "Includes variant and substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822
+#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855
#: templates/js/translated/part.js:763
msgid "Includes variant stock"
msgstr ""
-#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824
+#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857
msgid "Includes substitute stock"
msgstr ""
-#: templates/js/translated/bom.js:956
+#: templates/js/translated/bom.js:954
msgid "Substitutes"
msgstr ""
-#: templates/js/translated/bom.js:971
+#: templates/js/translated/bom.js:969
msgid "Purchase Price Range"
msgstr ""
-#: templates/js/translated/bom.js:978
+#: templates/js/translated/bom.js:976
msgid "Purchase Price Average"
msgstr ""
-#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147
+#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145
msgid "View BOM"
msgstr ""
-#: templates/js/translated/bom.js:1054
+#: templates/js/translated/bom.js:1052
msgid "Including On Order"
msgstr ""
-#: templates/js/translated/bom.js:1118
+#: templates/js/translated/bom.js:1116
msgid "Validate BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1120
+#: templates/js/translated/bom.js:1118
msgid "This line has been validated"
msgstr ""
-#: templates/js/translated/bom.js:1122
+#: templates/js/translated/bom.js:1120
msgid "Edit substitute parts"
msgstr ""
-#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286
+#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284
msgid "Edit BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1126
+#: templates/js/translated/bom.js:1124
msgid "Delete BOM Item"
msgstr ""
-#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617
+#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649
msgid "No BOM items found"
msgstr ""
-#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755
+#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787
msgid "Required Part"
msgstr ""
-#: templates/js/translated/bom.js:1488
+#: templates/js/translated/bom.js:1486
msgid "Inherited from parent BOM"
msgstr ""
-#: templates/js/translated/build.js:86
+#: templates/js/translated/build.js:89
msgid "Edit Build Order"
msgstr ""
-#: templates/js/translated/build.js:120
+#: templates/js/translated/build.js:132
msgid "Create Build Order"
msgstr ""
-#: templates/js/translated/build.js:133
+#: templates/js/translated/build.js:165
msgid "Cancel Build Order"
msgstr ""
-#: templates/js/translated/build.js:142
+#: templates/js/translated/build.js:174
msgid "Are you sure you wish to cancel this build?"
msgstr "是否确定取消生产?"
-#: templates/js/translated/build.js:148
+#: templates/js/translated/build.js:180
msgid "Stock items have been allocated to this build order"
msgstr ""
-#: templates/js/translated/build.js:155
+#: templates/js/translated/build.js:187
msgid "There are incomplete outputs remaining for this build order"
msgstr ""
-#: templates/js/translated/build.js:185
+#: templates/js/translated/build.js:217
msgid "Build order is ready to be completed"
msgstr ""
-#: templates/js/translated/build.js:190
+#: templates/js/translated/build.js:222
msgid "Build Order is incomplete"
msgstr "生产订单未完成"
-#: templates/js/translated/build.js:222
+#: templates/js/translated/build.js:254
msgid "Complete Build Order"
msgstr "生产订单完成"
-#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92
+#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92
#: templates/js/translated/stock.js:214
msgid "Next available serial number"
msgstr ""
-#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94
+#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94
#: templates/js/translated/stock.js:216
msgid "Latest serial number"
msgstr ""
-#: templates/js/translated/build.js:274
+#: templates/js/translated/build.js:306
msgid "The Bill of Materials contains trackable parts"
msgstr ""
-#: templates/js/translated/build.js:275
+#: templates/js/translated/build.js:307
msgid "Build outputs must be generated individually"
msgstr ""
-#: templates/js/translated/build.js:283
+#: templates/js/translated/build.js:315
msgid "Trackable parts can have serial numbers specified"
msgstr "可追踪商品可以指定序列号"
-#: templates/js/translated/build.js:284
+#: templates/js/translated/build.js:316
msgid "Enter serial numbers to generate multiple single build outputs"
msgstr ""
-#: templates/js/translated/build.js:291
+#: templates/js/translated/build.js:323
msgid "Create Build Output"
msgstr "创建创建生产产出"
-#: templates/js/translated/build.js:322
+#: templates/js/translated/build.js:354
msgid "Allocate stock items to this build output"
msgstr ""
-#: templates/js/translated/build.js:333
+#: templates/js/translated/build.js:365
msgid "Unallocate stock from build output"
msgstr ""
-#: templates/js/translated/build.js:342
+#: templates/js/translated/build.js:374
msgid "Complete build output"
msgstr ""
-#: templates/js/translated/build.js:350
+#: templates/js/translated/build.js:382
msgid "Delete build output"
msgstr ""
-#: templates/js/translated/build.js:373
+#: templates/js/translated/build.js:405
msgid "Are you sure you wish to unallocate stock items from this build?"
msgstr ""
-#: templates/js/translated/build.js:391
+#: templates/js/translated/build.js:423
msgid "Unallocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:411 templates/js/translated/build.js:563
+#: templates/js/translated/build.js:443 templates/js/translated/build.js:595
msgid "Select Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:412 templates/js/translated/build.js:564
+#: templates/js/translated/build.js:444 templates/js/translated/build.js:596
msgid "At least one build output must be selected"
msgstr ""
-#: templates/js/translated/build.js:466 templates/js/translated/build.js:618
+#: templates/js/translated/build.js:498 templates/js/translated/build.js:650
msgid "Output"
msgstr ""
-#: templates/js/translated/build.js:484
+#: templates/js/translated/build.js:516
msgid "Complete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:631
+#: templates/js/translated/build.js:663
msgid "Delete Build Outputs"
msgstr ""
-#: templates/js/translated/build.js:720
+#: templates/js/translated/build.js:752
msgid "No build order allocations found"
msgstr ""
-#: templates/js/translated/build.js:757
+#: templates/js/translated/build.js:789
msgid "Location not specified"
msgstr "未指定仓储地点"
-#: templates/js/translated/build.js:1136
+#: templates/js/translated/build.js:1168
msgid "No active build outputs found"
msgstr ""
-#: templates/js/translated/build.js:1205
+#: templates/js/translated/build.js:1237
msgid "Allocated Stock"
msgstr ""
-#: templates/js/translated/build.js:1212
+#: templates/js/translated/build.js:1244
msgid "No tracked BOM items for this build"
msgstr ""
-#: templates/js/translated/build.js:1234
+#: templates/js/translated/build.js:1266
msgid "Completed Tests"
msgstr ""
-#: templates/js/translated/build.js:1239
+#: templates/js/translated/build.js:1271
msgid "No required tests for this build"
msgstr ""
-#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656
-#: templates/js/translated/order.js:3332
+#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689
+#: templates/js/translated/order.js:3371
msgid "Edit stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657
-#: templates/js/translated/order.js:3333
+#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690
+#: templates/js/translated/order.js:3372
msgid "Delete stock allocation"
msgstr ""
-#: templates/js/translated/build.js:1732
+#: templates/js/translated/build.js:1764
msgid "Edit Allocation"
msgstr ""
-#: templates/js/translated/build.js:1742
+#: templates/js/translated/build.js:1774
msgid "Remove Allocation"
msgstr ""
-#: templates/js/translated/build.js:1767
+#: templates/js/translated/build.js:1799
msgid "Substitute parts available"
msgstr ""
-#: templates/js/translated/build.js:1784
+#: templates/js/translated/build.js:1816
msgid "Quantity Per"
msgstr ""
-#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639
+#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678
msgid "Insufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637
+#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676
msgid "Sufficient stock available"
msgstr ""
-#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086
-#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651
+#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119
+#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690
msgid "Allocated"
msgstr ""
-#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731
+#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770
msgid "Build stock"
msgstr ""
-#: templates/js/translated/build.js:1893 templates/stock_table.html:50
+#: templates/js/translated/build.js:1926 templates/stock_table.html:50
msgid "Order stock"
msgstr ""
-#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724
+#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763
msgid "Allocate stock"
msgstr ""
-#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172
-#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859
+#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172
+#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898
#: templates/js/translated/report.js:225
msgid "Select Parts"
msgstr "选择商品"
-#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860
+#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899
msgid "You must select at least one part to allocate"
msgstr ""
-#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808
+#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847
msgid "Specify stock allocation quantity"
msgstr ""
-#: templates/js/translated/build.js:2059
+#: templates/js/translated/build.js:2092
msgid "All Parts Allocated"
msgstr ""
-#: templates/js/translated/build.js:2060
+#: templates/js/translated/build.js:2093
msgid "All selected parts have been fully allocated"
msgstr ""
-#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874
+#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913
msgid "Select source location (leave blank to take from all locations)"
msgstr ""
-#: templates/js/translated/build.js:2102
+#: templates/js/translated/build.js:2135
msgid "Allocate Stock Items to Build Order"
msgstr ""
-#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971
+#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010
msgid "No matching stock locations"
msgstr ""
-#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048
+#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087
msgid "No matching stock items"
msgstr ""
-#: templates/js/translated/build.js:2282
+#: templates/js/translated/build.js:2315
msgid "Automatic Stock Allocation"
msgstr ""
-#: templates/js/translated/build.js:2283
+#: templates/js/translated/build.js:2316
msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines"
msgstr ""
-#: templates/js/translated/build.js:2285
+#: templates/js/translated/build.js:2318
msgid "If a location is specifed, stock will only be allocated from that location"
msgstr ""
-#: templates/js/translated/build.js:2286
+#: templates/js/translated/build.js:2319
msgid "If stock is considered interchangeable, it will be allocated from the first location it is found"
msgstr ""
-#: templates/js/translated/build.js:2287
+#: templates/js/translated/build.js:2320
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:2308
+#: templates/js/translated/build.js:2341
msgid "Allocate Stock Items"
msgstr ""
-#: templates/js/translated/build.js:2414
+#: templates/js/translated/build.js:2447
msgid "No builds matching query"
msgstr ""
-#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387
-#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686
+#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387
+#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686
#: templates/js/translated/stock.js:2386
msgid "Select"
msgstr ""
-#: templates/js/translated/build.js:2463
+#: templates/js/translated/build.js:2496
msgid "Build order is overdue"
msgstr ""
-#: templates/js/translated/build.js:2491
+#: templates/js/translated/build.js:2524
msgid "Progress"
msgstr ""
-#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647
+#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647
msgid "No user information"
msgstr "没有用户信息"
-#: templates/js/translated/build.js:2633
+#: templates/js/translated/build.js:2666
msgid "No parts allocated for"
msgstr ""
@@ -8390,11 +8404,11 @@ msgstr "添加制造商商品"
msgid "Edit Manufacturer Part"
msgstr "编辑制造商商品"
-#: templates/js/translated/company.js:167 templates/js/translated/order.js:509
+#: templates/js/translated/company.js:167 templates/js/translated/order.js:510
msgid "Add Supplier"
msgstr "添加供应商"
-#: templates/js/translated/company.js:195 templates/js/translated/order.js:628
+#: templates/js/translated/company.js:195 templates/js/translated/order.js:667
msgid "Add Supplier Part"
msgstr "添加供应商商品"
@@ -8765,381 +8779,385 @@ msgstr ""
msgid "Notifications will load here"
msgstr ""
-#: templates/js/translated/order.js:94
+#: templates/js/translated/order.js:95
msgid "No stock items have been allocated to this shipment"
msgstr ""
-#: templates/js/translated/order.js:99
+#: templates/js/translated/order.js:100
msgid "The following stock items will be shipped"
msgstr ""
-#: templates/js/translated/order.js:139
+#: templates/js/translated/order.js:140
msgid "Complete Shipment"
msgstr ""
-#: templates/js/translated/order.js:159
+#: templates/js/translated/order.js:160
msgid "Confirm Shipment"
msgstr ""
-#: templates/js/translated/order.js:215
+#: templates/js/translated/order.js:216
msgid "No pending shipments found"
msgstr ""
-#: templates/js/translated/order.js:219
+#: templates/js/translated/order.js:220
msgid "No stock items have been allocated to pending shipments"
msgstr ""
-#: templates/js/translated/order.js:251
+#: templates/js/translated/order.js:252
msgid "Skip"
msgstr ""
-#: templates/js/translated/order.js:281
+#: templates/js/translated/order.js:282
msgid "Complete Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:287
+#: templates/js/translated/order.js:288
msgid "Mark this order as complete?"
msgstr ""
-#: templates/js/translated/order.js:293
+#: templates/js/translated/order.js:294
msgid "All line items have been received"
msgstr ""
-#: templates/js/translated/order.js:298
+#: templates/js/translated/order.js:299
msgid "This order has line items which have not been marked as received."
msgstr ""
-#: templates/js/translated/order.js:299
+#: templates/js/translated/order.js:300
msgid "Completing this order means that the order and line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:322
+#: templates/js/translated/order.js:323
msgid "Cancel Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:327
+#: templates/js/translated/order.js:328
msgid "Are you sure you wish to cancel this purchase order?"
msgstr ""
-#: templates/js/translated/order.js:333
+#: templates/js/translated/order.js:334
msgid "This purchase order can not be cancelled"
msgstr ""
-#: templates/js/translated/order.js:356
+#: templates/js/translated/order.js:357
msgid "Issue Purchase Order"
msgstr ""
-#: templates/js/translated/order.js:361
+#: templates/js/translated/order.js:362
msgid "After placing this purchase order, line items will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:383
+#: templates/js/translated/order.js:384
msgid "Cancel Sales Order"
msgstr ""
-#: templates/js/translated/order.js:388
+#: templates/js/translated/order.js:389
msgid "Cancelling this order means that the order will no longer be editable."
msgstr ""
-#: templates/js/translated/order.js:442
+#: templates/js/translated/order.js:443
msgid "Create New Shipment"
msgstr ""
-#: templates/js/translated/order.js:467
+#: templates/js/translated/order.js:468
msgid "Add Customer"
msgstr ""
-#: templates/js/translated/order.js:492
+#: templates/js/translated/order.js:493
msgid "Create Sales Order"
msgstr ""
-#: templates/js/translated/order.js:757
+#: templates/js/translated/order.js:554
+msgid "Edit Purchase Order"
+msgstr ""
+
+#: templates/js/translated/order.js:796
msgid "Export Order"
msgstr ""
-#: templates/js/translated/order.js:808
+#: templates/js/translated/order.js:847
msgid "At least one purchaseable part must be selected"
msgstr ""
-#: templates/js/translated/order.js:833
+#: templates/js/translated/order.js:872
msgid "Quantity to order"
msgstr ""
-#: templates/js/translated/order.js:842
+#: templates/js/translated/order.js:881
msgid "New supplier part"
msgstr ""
-#: templates/js/translated/order.js:860
+#: templates/js/translated/order.js:899
msgid "New purchase order"
msgstr ""
-#: templates/js/translated/order.js:893
+#: templates/js/translated/order.js:932
msgid "Add to purchase order"
msgstr ""
-#: templates/js/translated/order.js:1002
+#: templates/js/translated/order.js:1041
msgid "No matching supplier parts"
msgstr ""
-#: templates/js/translated/order.js:1017
+#: templates/js/translated/order.js:1056
msgid "No matching purchase orders"
msgstr ""
-#: templates/js/translated/order.js:1194
+#: templates/js/translated/order.js:1233
msgid "Select Line Items"
msgstr ""
-#: templates/js/translated/order.js:1195
+#: templates/js/translated/order.js:1234
msgid "At least one line item must be selected"
msgstr ""
-#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314
+#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353
msgid "Add batch code"
msgstr ""
-#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325
+#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364
msgid "Add serial numbers"
msgstr ""
-#: templates/js/translated/order.js:1233
+#: templates/js/translated/order.js:1272
msgid "Quantity to receive"
msgstr ""
-#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144
+#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144
msgid "Stock Status"
msgstr ""
-#: templates/js/translated/order.js:1388
+#: templates/js/translated/order.js:1427
msgid "Order Code"
msgstr "订单编码"
-#: templates/js/translated/order.js:1389
+#: templates/js/translated/order.js:1428
msgid "Ordered"
msgstr ""
-#: templates/js/translated/order.js:1391
+#: templates/js/translated/order.js:1430
msgid "Quantity to Receive"
msgstr ""
-#: templates/js/translated/order.js:1410
+#: templates/js/translated/order.js:1449
msgid "Confirm receipt of items"
msgstr ""
-#: templates/js/translated/order.js:1411
+#: templates/js/translated/order.js:1450
msgid "Receive Purchase Order Items"
msgstr ""
-#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943
+#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943
msgid "No purchase orders found"
msgstr ""
-#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503
+#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542
msgid "Order is overdue"
msgstr ""
-#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568
-#: templates/js/translated/order.js:2709
+#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607
+#: templates/js/translated/order.js:2748
msgid "Items"
msgstr ""
-#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783
+#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822
msgid "Duplicate Line Item"
msgstr ""
-#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805
+#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844
msgid "Edit Line Item"
msgstr ""
-#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816
+#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855
msgid "Delete Line Item"
msgstr ""
-#: templates/js/translated/order.js:1920
+#: templates/js/translated/order.js:1959
msgid "No line items found"
msgstr ""
-#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517
+#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556
msgid "Total"
msgstr ""
-#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203
-#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050
-#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488
+#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242
+#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089
+#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703
msgid "Unit Price"
msgstr "单价"
-#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219
-#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066
+#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258
+#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105
msgid "Total Price"
msgstr ""
-#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600
+#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639
#: templates/js/translated/part.js:1050
msgid "This line item is overdue"
msgstr ""
-#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096
+#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096
msgid "Receive line item"
msgstr ""
-#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737
+#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776
msgid "Duplicate line item"
msgstr ""
-#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738
+#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777
msgid "Edit line item"
msgstr ""
-#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742
+#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781
msgid "Delete line item"
msgstr ""
-#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115
+#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154
msgid "Duplicate line"
msgstr ""
-#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116
+#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155
msgid "Edit line"
msgstr ""
-#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117
+#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156
msgid "Delete line"
msgstr ""
-#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147
+#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186
msgid "Duplicate Line"
msgstr ""
-#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168
+#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207
msgid "Edit Line"
msgstr ""
-#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179
+#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218
msgid "Delete Line"
msgstr ""
-#: templates/js/translated/order.js:2343
+#: templates/js/translated/order.js:2382
msgid "No matching line"
msgstr ""
-#: templates/js/translated/order.js:2454
+#: templates/js/translated/order.js:2493
msgid "No sales orders found"
msgstr ""
-#: templates/js/translated/order.js:2517
+#: templates/js/translated/order.js:2556
msgid "Invalid Customer"
msgstr ""
-#: templates/js/translated/order.js:2615
+#: templates/js/translated/order.js:2654
msgid "Edit shipment"
msgstr ""
-#: templates/js/translated/order.js:2618
+#: templates/js/translated/order.js:2657
msgid "Complete shipment"
msgstr ""
-#: templates/js/translated/order.js:2623
+#: templates/js/translated/order.js:2662
msgid "Delete shipment"
msgstr ""
-#: templates/js/translated/order.js:2643
+#: templates/js/translated/order.js:2682
msgid "Edit Shipment"
msgstr ""
-#: templates/js/translated/order.js:2660
+#: templates/js/translated/order.js:2699
msgid "Delete Shipment"
msgstr ""
-#: templates/js/translated/order.js:2694
+#: templates/js/translated/order.js:2733
msgid "No matching shipments found"
msgstr ""
-#: templates/js/translated/order.js:2704
+#: templates/js/translated/order.js:2743
msgid "Shipment Reference"
msgstr ""
-#: templates/js/translated/order.js:2728
+#: templates/js/translated/order.js:2767
msgid "Not shipped"
msgstr ""
-#: templates/js/translated/order.js:2734
+#: templates/js/translated/order.js:2773
msgid "Tracking"
msgstr ""
-#: templates/js/translated/order.js:2738
+#: templates/js/translated/order.js:2777
msgid "Invoice"
msgstr ""
-#: templates/js/translated/order.js:2907
+#: templates/js/translated/order.js:2946
msgid "Add Shipment"
msgstr ""
-#: templates/js/translated/order.js:2958
+#: templates/js/translated/order.js:2997
msgid "Confirm stock allocation"
msgstr "确认库存分配"
-#: templates/js/translated/order.js:2959
+#: templates/js/translated/order.js:2998
msgid "Allocate Stock Items to Sales Order"
msgstr ""
-#: templates/js/translated/order.js:3167
+#: templates/js/translated/order.js:3206
msgid "No sales order allocations found"
msgstr ""
-#: templates/js/translated/order.js:3246
+#: templates/js/translated/order.js:3285
msgid "Edit Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3263
+#: templates/js/translated/order.js:3302
msgid "Confirm Delete Operation"
msgstr "确认删除操作"
-#: templates/js/translated/order.js:3264
+#: templates/js/translated/order.js:3303
msgid "Delete Stock Allocation"
msgstr ""
-#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398
+#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437
#: templates/js/translated/stock.js:1602
msgid "Shipped to customer"
msgstr ""
-#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407
+#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446
msgid "Stock location not specified"
msgstr ""
-#: templates/js/translated/order.js:3721
+#: templates/js/translated/order.js:3760
msgid "Allocate serial numbers"
msgstr ""
-#: templates/js/translated/order.js:3727
+#: templates/js/translated/order.js:3766
msgid "Purchase stock"
msgstr ""
-#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932
+#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971
msgid "Calculate price"
msgstr ""
-#: templates/js/translated/order.js:3746
+#: templates/js/translated/order.js:3785
msgid "Cannot be deleted as items have been shipped"
msgstr ""
-#: templates/js/translated/order.js:3749
+#: templates/js/translated/order.js:3788
msgid "Cannot be deleted as items have been allocated"
msgstr ""
-#: templates/js/translated/order.js:3831
+#: templates/js/translated/order.js:3870
msgid "Allocate Serial Numbers"
msgstr ""
-#: templates/js/translated/order.js:3940
+#: templates/js/translated/order.js:3979
msgid "Update Unit Price"
msgstr ""
-#: templates/js/translated/order.js:3954
+#: templates/js/translated/order.js:3993
msgid "No matching line items"
msgstr ""
-#: templates/js/translated/order.js:4190
+#: templates/js/translated/order.js:4229
msgid "No matching lines"
msgstr ""
@@ -9319,12 +9337,12 @@ msgstr ""
msgid "Copy Bill of Materials"
msgstr ""
-#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470
+#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478
#: templates/js/translated/table_filters.js:468
msgid "Low stock"
msgstr ""
-#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482
+#: templates/js/translated/part.js:596
msgid "No stock available"
msgstr ""
@@ -9356,7 +9374,7 @@ msgstr ""
msgid "Delete Part Relationship"
msgstr ""
-#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553
+#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549
msgid "No parts found"
msgstr ""
@@ -9368,100 +9386,124 @@ msgstr ""
msgid "No category"
msgstr "没有分类"
-#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820
+#: templates/js/translated/part.js:1476
+msgid "No stock"
+msgstr ""
+
+#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816
#: templates/js/translated/stock.js:2347
msgid "Display as list"
msgstr ""
-#: templates/js/translated/part.js:1593
+#: templates/js/translated/part.js:1589
msgid "Display as grid"
msgstr ""
-#: templates/js/translated/part.js:1659
+#: templates/js/translated/part.js:1655
msgid "Set the part category for the selected parts"
msgstr ""
-#: templates/js/translated/part.js:1664
+#: templates/js/translated/part.js:1660
msgid "Set Part Category"
msgstr "设置商品类别"
-#: templates/js/translated/part.js:1669
+#: templates/js/translated/part.js:1665
msgid "Select Part Category"
msgstr ""
-#: templates/js/translated/part.js:1682
+#: templates/js/translated/part.js:1678
msgid "Category is required"
msgstr ""
-#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366
+#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366
msgid "Display as tree"
msgstr ""
-#: templates/js/translated/part.js:1918
+#: templates/js/translated/part.js:1914
msgid "Load Subcategories"
msgstr ""
-#: templates/js/translated/part.js:1934
+#: templates/js/translated/part.js:1930
msgid "Subscribed category"
msgstr ""
-#: templates/js/translated/part.js:1992
+#: templates/js/translated/part.js:1988
msgid "No test templates matching query"
msgstr ""
-#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299
+#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299
msgid "Edit test result"
msgstr ""
-#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300
+#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300
#: templates/js/translated/stock.js:1560
msgid "Delete test result"
msgstr ""
-#: templates/js/translated/part.js:2050
+#: templates/js/translated/part.js:2046
msgid "This test is defined for a parent part"
msgstr ""
-#: templates/js/translated/part.js:2072
+#: templates/js/translated/part.js:2068
msgid "Edit Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2086
+#: templates/js/translated/part.js:2082
msgid "Delete Test Result Template"
msgstr ""
-#: templates/js/translated/part.js:2111
+#: templates/js/translated/part.js:2107
#, python-brace-format
msgid "No ${human_name} information found"
msgstr ""
-#: templates/js/translated/part.js:2168
+#: templates/js/translated/part.js:2164
#, python-brace-format
msgid "Edit ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2169
+#: templates/js/translated/part.js:2165
#, python-brace-format
msgid "Delete ${human_name}"
msgstr ""
-#: templates/js/translated/part.js:2283
-msgid "Current Stock"
+#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331
+msgid "No date specified"
msgstr ""
-#: templates/js/translated/part.js:2316
+#: templates/js/translated/part.js:2333
+msgid "Specified date is in the past"
+msgstr ""
+
+#: templates/js/translated/part.js:2339
+msgid "Speculative"
+msgstr ""
+
+#: templates/js/translated/part.js:2389
msgid "No scheduling information available for this part"
msgstr ""
-#: templates/js/translated/part.js:2342
+#: templates/js/translated/part.js:2395
+msgid "Error fetching scheduling information for this part"
+msgstr ""
+
+#: templates/js/translated/part.js:2491
msgid "Scheduled Stock Quantities"
msgstr ""
-#: templates/js/translated/part.js:2412
+#: templates/js/translated/part.js:2507
+msgid "Maximum Quantity"
+msgstr ""
+
+#: templates/js/translated/part.js:2533
+msgid "Minimum Stock Level"
+msgstr ""
+
+#: templates/js/translated/part.js:2627
msgid "Single Price"
msgstr ""
-#: templates/js/translated/part.js:2431
+#: templates/js/translated/part.js:2646
msgid "Single Price Difference"
msgstr ""
@@ -10222,10 +10264,6 @@ msgstr ""
msgid "Hide/Show pagination"
msgstr ""
-#: templates/js/translated/tables.js:558
-msgid "Refresh"
-msgstr ""
-
#: templates/js/translated/tables.js:561
msgid "Toggle"
msgstr ""