\n"
@@ -78,7 +78,7 @@ msgstr ""
msgid "Duplicate serial: {n}"
msgstr ""
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr ""
@@ -107,7 +107,7 @@ msgstr ""
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr ""
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr ""
@@ -125,7 +125,7 @@ msgstr ""
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr ""
@@ -137,7 +137,7 @@ msgstr ""
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr ""
@@ -147,7 +147,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -159,8 +159,8 @@ msgstr ""
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr ""
@@ -373,27 +373,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr ""
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr ""
@@ -459,17 +459,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -478,7 +478,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -488,8 +488,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr ""
@@ -535,7 +535,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -544,13 +544,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -603,8 +603,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -628,15 +628,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -647,7 +647,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -703,7 +703,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -711,16 +711,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -737,7 +737,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -754,30 +754,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -810,11 +810,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -827,17 +827,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -845,23 +845,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -917,7 +917,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1038,7 +1038,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1196,7 +1196,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1251,7 +1251,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1899,7 +1899,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1954,7 +1954,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1993,7 +1993,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2023,7 +2023,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2038,7 +2038,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2082,8 +2082,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2167,11 +2167,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2217,7 +2217,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2264,7 +2264,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2387,7 +2387,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2443,7 +2443,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2600,7 +2600,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2714,7 +2714,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2726,209 +2726,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2979,8 +2979,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3164,21 +3164,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4066,7 +4070,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4175,7 +4179,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4316,7 +4320,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4410,7 +4414,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4553,51 +4557,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4636,7 +4640,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4742,7 +4746,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4851,7 +4855,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5162,17 +5166,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5194,7 +5198,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5284,187 +5288,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6583,7 +6587,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6834,7 +6838,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7032,75 +7036,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po
index f411242796..6d0f3375c4 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:40\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -77,7 +77,7 @@ msgstr ""
msgid "Duplicate serial: {n}"
msgstr ""
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr ""
@@ -106,7 +106,7 @@ msgstr ""
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr ""
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr ""
@@ -124,7 +124,7 @@ msgstr ""
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "Usuario"
@@ -136,7 +136,7 @@ msgstr ""
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "Nombre"
@@ -146,7 +146,7 @@ msgstr "Nombre"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "Nombre"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr "Descripción"
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr "Eliminar elemento"
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr "Configurar Contraseña"
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr "Información del sistema"
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr "Cantidad"
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr "Unicación"
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr "Estado"
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr "Parte"
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr "Notas"
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr "Número de serie"
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr "Progreso"
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr "Lote"
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr "Detalles"
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr "Cliente"
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po
index a266da7266..97617764a4 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-02 19:11\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:40\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -77,7 +77,7 @@ msgstr "Sélectionnez une catégorie"
msgid "Duplicate serial: {n}"
msgstr "Dupliquer le numéro de série: {n}"
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr "Quantité fournie invalide"
@@ -106,7 +106,7 @@ msgstr "Aucun numéro de série trouvé"
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr "Le nombre de numéros de série uniques ({s}) doit correspondre à la quantité ({q})"
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr "Pièce jointe"
@@ -124,7 +124,7 @@ msgstr "Commentaire du fichier"
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "Utilisateur"
@@ -136,7 +136,7 @@ msgstr "date de chargement"
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "Nom"
@@ -146,7 +146,7 @@ msgstr "Nom"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "Nom"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr "Description"
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr "Supprimer cet élément"
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr "Modifier les informations utilisateur"
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr "Informations système"
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr "Quantité"
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr "Emplacement des pièces terminées"
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr "Pièce"
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr "Date de création"
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr "Lien Externe"
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr "Notes"
@@ -809,11 +809,11 @@ msgstr "L'élément de construction doit spécifier une sortie de construction,
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr "L'article en stock sélectionné n'a pas été trouvé dans la BOM pour la pièce '{p}'"
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr "Détails"
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po
index 851cd87378..6caf5cb88d 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:40\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -77,7 +77,7 @@ msgstr ""
msgid "Duplicate serial: {n}"
msgstr ""
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr ""
@@ -106,7 +106,7 @@ msgstr ""
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr ""
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr ""
@@ -124,7 +124,7 @@ msgstr ""
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr ""
@@ -136,7 +136,7 @@ msgstr ""
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr ""
@@ -146,7 +146,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr ""
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr ""
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr ""
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr ""
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr ""
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po
index 5febd2102f..f5afd1b0fe 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:41\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -77,7 +77,7 @@ msgstr ""
msgid "Duplicate serial: {n}"
msgstr ""
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr ""
@@ -106,7 +106,7 @@ msgstr ""
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr ""
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr ""
@@ -124,7 +124,7 @@ msgstr ""
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr ""
@@ -136,7 +136,7 @@ msgstr ""
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr ""
@@ -146,7 +146,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr ""
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr ""
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr ""
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr ""
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr ""
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po
index 64f5af067b..9b4e347ff7 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:40\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -77,7 +77,7 @@ msgstr "Wybierz kategorię"
msgid "Duplicate serial: {n}"
msgstr "Powtórzony numer seryjny: {n}"
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr "Podano nieprawidłową ilość"
@@ -106,7 +106,7 @@ msgstr "Nie znaleziono numerów seryjnych"
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr "Ilość numerów seryjnych ({s}) musi odpowiadać ilości ({q})"
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr "Załącznik"
@@ -124,7 +124,7 @@ msgstr "Komentarz pliku"
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "Użytkownik"
@@ -136,7 +136,7 @@ msgstr "data przesłania"
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "Nazwa"
@@ -146,7 +146,7 @@ msgstr "Nazwa"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "Nazwa"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr "Opis"
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr "Usuń element"
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr "Zaznacz pole aby potwierdzić usunięcie elementu"
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr "Edytuj informacje użytkownika"
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr "Ustaw hasło"
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr "Hasła muszą być zgodne"
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr "Informacja systemowa"
@@ -458,17 +458,17 @@ msgstr "Data docelowa"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr "Ilość"
@@ -534,7 +534,7 @@ msgstr "Oznacz budowę jako ukończoną"
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr "Lokalizacja"
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr "Lokalizacja ukończonych części"
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr "Status"
@@ -602,8 +602,8 @@ msgstr "Zlecenia budowy"
msgid "Build Order Reference"
msgstr "Odwołanie do zamówienia wykonania"
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana"
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana"
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr "Część"
@@ -702,7 +702,7 @@ msgstr "Status budowania"
msgid "Build status code"
msgstr "Kod statusu budowania"
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr "Kod partii"
@@ -710,16 +710,16 @@ msgstr "Kod partii"
msgid "Batch code for this build output"
msgstr "Kod partii dla wyjścia budowy"
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr "Data utworzenia"
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr "Docelowy termin zakończenia"
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr "Data zakończenia"
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr "Użytkownik, który wydał to zamówienie"
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr "Użytkownik odpowiedzialny za to zamówienie budowy"
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr "Link Zewnętrzny"
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr "Link do zewnętrznego adresu URL"
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr "Uwagi"
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr "Budowa"
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr "Element magazynowy"
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr "Lokalizacja magazynowania przedmiotu"
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr "Zainstaluj do"
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr "Docelowa lokalizacja magazynowa przedmiotu"
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr "Numer Seryjny"
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr "Postęp"
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr "Nie określono lokalizacji docelowej"
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr "Partia"
@@ -1250,7 +1250,7 @@ msgstr "Szczegóły zlecenia budowy"
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr "Szczegóły"
@@ -1898,7 +1898,7 @@ msgstr "Numer producenta"
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr "MPN"
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr "Punkt kontaktowy"
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr "jest producentem"
msgid "Does this company manufacture parts?"
msgstr "Czy to przedsiębiorstwo produkuje części?"
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr "Część bazowa"
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr "Wybierz dostawcę"
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr "SKU"
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr "Opakowanie"
@@ -2165,11 +2165,11 @@ msgstr "Nie określono strony internetowej"
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr "Klient"
@@ -2215,7 +2215,7 @@ msgstr "Usuń części"
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr "Nowy komponent"
@@ -2262,7 +2262,7 @@ msgstr "Utwórz nowego dostawcę części"
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr "Now dostawca części"
@@ -2385,7 +2385,7 @@ msgstr "Dostarczone części"
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr "Wprowadź ilość produktów magazynowych"
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr "Odniesienie zamówienia"
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr "Opis Zamówienia"
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr "Link do zewnętrznej witryny"
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr "Utworzony przez"
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie"
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr "Notatki do zamówienia"
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr "odebrane przez"
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr "Data wydania"
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr "Data wysyłki"
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr "wysłane przez"
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr "Ilość elementów"
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr "Zamówienie"
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr "Odebrane"
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr "Cena zakupu"
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr "Cena zakupu jednostkowego"
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr "Cena sprzedaży"
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr "Jednostkowa cena sprzedaży"
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr "Linia"
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr "Komponent"
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr "Wydany"
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr "Nowa lokalizacja"
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr "Cena jednostkowa"
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr "Szczegóły części"
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr "Ostatni numer seryjny"
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po
index 02ea1794d6..d61e19d068 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-03 17:03\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:41\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -77,7 +77,7 @@ msgstr "Выбрать категорию"
msgid "Duplicate serial: {n}"
msgstr "Дублировать серийный номер: {n}"
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr "недопустимое количество"
@@ -106,7 +106,7 @@ msgstr "Серийных номеров не найдено"
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr "Число уникальных серийных номеров ({s}) должно соответствовать количеству ({q})"
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr "Вложения"
@@ -124,7 +124,7 @@ msgstr "Комментарий к файлу"
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "Пользователь"
@@ -136,7 +136,7 @@ msgstr "дата загрузки"
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "Название"
@@ -146,7 +146,7 @@ msgstr "Название"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "Название"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr "Описание"
@@ -372,27 +372,27 @@ msgstr "Перегрузка не может превысить 100%"
msgid "Overage must be an integer value or a percentage"
msgstr "Превышение должно быть целым числом или процентом"
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr "Удалить элемент"
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr "Установите флажок для подтверждения удаления элемента"
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr "Редактировать информацию о пользователе"
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr "Установить пароль"
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr "Пароли должны совпадать"
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr "Информация о системе"
@@ -458,17 +458,17 @@ msgstr "Целевая дата"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты."
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr "Целевая дата для сборки. Сборка будет п
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr "Целевая дата для сборки. Сборка будет п
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr "Количество"
@@ -522,7 +522,7 @@ msgstr "Подтвердите снятие со склада"
#: build/forms.py:169
msgid "Confirm stock allocation"
-msgstr ""
+msgstr "Подтвердите выделение запасов"
#: build/forms.py:186
msgid "Mark build as complete"
@@ -534,7 +534,7 @@ msgstr "Пометить сборку как завершенную"
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr "Расположение"
@@ -543,19 +543,19 @@ msgid "Location of completed parts"
msgstr "Расположение укомплектованных частей"
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr "Статус"
#: build/forms.py:216
msgid "Build output stock status"
-msgstr ""
+msgstr "Создать статус склада вывода"
#: build/forms.py:223
msgid "Confirm incomplete"
@@ -563,30 +563,30 @@ msgstr "Подтвердите незавершенность"
#: build/forms.py:224
msgid "Confirm completion with incomplete stock allocation"
-msgstr ""
+msgstr "Подтвердите завершение с неполным выделением запасов"
#: build/forms.py:227
msgid "Confirm build completion"
-msgstr ""
+msgstr "Подтвердите завершение сборки"
#: build/forms.py:252
msgid "Confirm cancel"
-msgstr ""
+msgstr "Подтвердите отмену"
#: build/forms.py:252 build/views.py:66
msgid "Confirm build cancellation"
-msgstr ""
+msgstr "Подтвердите отмену сборки"
#: build/forms.py:266
msgid "Select quantity of stock to allocate"
-msgstr ""
+msgstr "Выберите количество запасов для распределения"
#: build/models.py:66 build/templates/build/build_base.html:9
#: build/templates/build/build_base.html:73
#: part/templates/part/allocation.html:23
#: report/templates/report/inventree_build_order_base.html:106
msgid "Build Order"
-msgstr ""
+msgstr "Порядок сборки"
#: build/models.py:67 build/templates/build/index.html:8
#: build/templates/build/index.html:15 order/templates/order/so_builds.html:12
@@ -596,14 +596,14 @@ msgstr ""
#: templates/InvenTree/search.html:185
#: templates/InvenTree/settings/tabs.html:34 users/models.py:43
msgid "Build Orders"
-msgstr ""
+msgstr "Порядок сборки"
#: build/models.py:127
msgid "Build Order Reference"
-msgstr ""
+msgstr "Ссылка на заказ"
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po
index 6934e3e8c4..e30c1ed591 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:41\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -77,7 +77,7 @@ msgstr "Kategori Seçin"
msgid "Duplicate serial: {n}"
msgstr "Tekrarlanan seri {n}"
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr "Geçersiz veri sağlandı"
@@ -106,7 +106,7 @@ msgstr "Seri numarası bulunamadı"
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr "Benzersiz serinin numaraları ({s}) miktarla eşleşmeli ({q})"
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr "Ek"
@@ -124,7 +124,7 @@ msgstr "Yorum"
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "Kullanıcı"
@@ -136,7 +136,7 @@ msgstr "Yükleme tarihi"
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "Adı"
@@ -146,7 +146,7 @@ msgstr "Adı"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "Adı"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr "Açıklama"
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr ""
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr ""
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr ""
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po
index b1ea2924c9..9892439445 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: 2021-06-01 10:07+0000\n"
-"PO-Revision-Date: 2021-06-01 10:22\n"
+"POT-Creation-Date: 2021-06-16 22:40+0000\n"
+"PO-Revision-Date: 2021-06-16 22:41\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -77,7 +77,7 @@ msgstr "选择分类"
msgid "Duplicate serial: {n}"
msgstr ""
-#: InvenTree/helpers.py:384 order/models.py:245 order/models.py:355
+#: InvenTree/helpers.py:384 order/models.py:247 order/models.py:357
#: stock/views.py:1795
msgid "Invalid quantity provided"
msgstr ""
@@ -106,7 +106,7 @@ msgstr "未找到序列号"
msgid "Number of unique serial number ({s}) must match quantity ({q})"
msgstr ""
-#: InvenTree/models.py:59 stock/models.py:1761
+#: InvenTree/models.py:59 stock/models.py:1763
msgid "Attachment"
msgstr "附件"
@@ -124,7 +124,7 @@ msgstr "文件注释"
#: InvenTree/models.py:68 InvenTree/models.py:69 part/models.py:1999
#: report/templates/report/inventree_test_report_base.html:91
-#: templates/js/stock.js:1149
+#: templates/js/stock.js:1154
msgid "User"
msgstr "用户"
@@ -136,7 +136,7 @@ msgstr "上传日期"
#: part/models.py:686 part/models.py:2140 part/templates/part/params.html:27
#: report/models.py:179 templates/InvenTree/search.html:137
#: templates/InvenTree/search.html:289 templates/js/part.js:118
-#: templates/js/part.js:641 templates/js/stock.js:942
+#: templates/js/part.js:641 templates/js/stock.js:947
msgid "Name"
msgstr "名称"
@@ -146,7 +146,7 @@ msgstr "名称"
#: company/templates/company/manufacturer_part_base.html:72
#: company/templates/company/supplier_part_base.html:71
#: company/templates/company/supplier_part_detail.html:31 label/models.py:109
-#: order/models.py:101 order/templates/order/purchase_order_detail.html:143
+#: order/models.py:103 order/templates/order/purchase_order_detail.html:147
#: part/models.py:710 part/templates/part/detail.html:54
#: part/templates/part/set_category.html:14 report/models.py:192
#: report/models.py:505 report/models.py:544
@@ -158,8 +158,8 @@ msgstr "名称"
#: templates/js/company.js:56 templates/js/order.js:183
#: templates/js/order.js:280 templates/js/part.js:177 templates/js/part.js:260
#: templates/js/part.js:437 templates/js/part.js:653 templates/js/part.js:721
-#: templates/js/stock.js:552 templates/js/stock.js:954
-#: templates/js/stock.js:999
+#: templates/js/stock.js:552 templates/js/stock.js:959
+#: templates/js/stock.js:1004
msgid "Description"
msgstr ""
@@ -372,27 +372,27 @@ msgstr ""
msgid "Overage must be an integer value or a percentage"
msgstr ""
-#: InvenTree/views.py:592
+#: InvenTree/views.py:605
msgid "Delete Item"
msgstr ""
-#: InvenTree/views.py:641
+#: InvenTree/views.py:654
msgid "Check box to confirm item deletion"
msgstr ""
-#: InvenTree/views.py:656 templates/InvenTree/settings/user.html:18
+#: InvenTree/views.py:669 templates/InvenTree/settings/user.html:18
msgid "Edit User Information"
msgstr ""
-#: InvenTree/views.py:667 templates/InvenTree/settings/user.html:22
+#: InvenTree/views.py:680 templates/InvenTree/settings/user.html:22
msgid "Set Password"
msgstr ""
-#: InvenTree/views.py:686
+#: InvenTree/views.py:699
msgid "Password fields must match"
msgstr ""
-#: InvenTree/views.py:937 templates/navbar.html:95
+#: InvenTree/views.py:950 templates/navbar.html:95
msgid "System Information"
msgstr ""
@@ -458,17 +458,17 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1333
+#: build/forms.py:48 build/forms.py:90 build/forms.py:266 build/models.py:1346
#: build/templates/build/allocation_card.html:23
#: build/templates/build/auto_allocate.html:17
#: build/templates/build/build_base.html:133
#: build/templates/build/detail.html:31 common/models.py:699
#: company/forms.py:176 company/templates/company/supplier_part_pricing.html:77
#: order/forms.py:188 order/forms.py:205 order/forms.py:240 order/forms.py:262
-#: order/forms.py:279 order/models.py:614 order/models.py:815
+#: order/forms.py:279 order/models.py:616 order/models.py:817
#: order/templates/order/order_wizard/match_parts.html:29
#: order/templates/order/order_wizard/select_parts.html:32
-#: order/templates/order/purchase_order_detail.html:175
+#: order/templates/order/purchase_order_detail.html:179
#: order/templates/order/sales_order_detail.html:70
#: order/templates/order/sales_order_detail.html:77
#: order/templates/order/sales_order_detail.html:162
@@ -477,7 +477,7 @@ msgstr ""
#: part/templates/part/allocation.html:19
#: part/templates/part/allocation.html:53
#: part/templates/part/order_prices.html:175
-#: part/templates/part/part_pricing.html:12
+#: part/templates/part/part_pricing.html:13
#: part/templates/part/sale_prices.html:85
#: report/templates/report/inventree_build_order_base.html:114
#: report/templates/report/inventree_po_report.html:91
@@ -487,8 +487,8 @@ msgstr ""
#: stock/templates/stock/item_base.html:255
#: stock/templates/stock/stock_adjust.html:18 templates/js/barcode.js:364
#: templates/js/bom.js:205 templates/js/build.js:486 templates/js/build.js:1024
-#: templates/js/part.js:795 templates/js/stock.js:1134
-#: templates/js/stock.js:1353
+#: templates/js/part.js:795 templates/js/stock.js:1139
+#: templates/js/stock.js:1358
msgid "Quantity"
msgstr ""
@@ -534,7 +534,7 @@ msgstr ""
#: stock/templates/stock/stock_adjust.html:17
#: templates/InvenTree/search.html:260 templates/js/barcode.js:363
#: templates/js/barcode.js:531 templates/js/build.js:500
-#: templates/js/stock.js:639 templates/js/stock.js:1026
+#: templates/js/stock.js:639 templates/js/stock.js:1031
msgid "Location"
msgstr ""
@@ -543,13 +543,13 @@ msgid "Location of completed parts"
msgstr ""
#: build/forms.py:215 build/templates/build/build_base.html:138
-#: build/templates/build/detail.html:59 order/models.py:466
+#: build/templates/build/detail.html:59 order/models.py:468
#: order/templates/order/receive_parts.html:24
#: stock/templates/stock/item_base.html:403 templates/InvenTree/search.html:252
#: templates/js/barcode.js:119 templates/js/build.js:780
#: templates/js/order.js:187 templates/js/order.js:285
-#: templates/js/stock.js:626 templates/js/stock.js:1103
-#: templates/js/stock.js:1369
+#: templates/js/stock.js:626 templates/js/stock.js:1108
+#: templates/js/stock.js:1374
msgid "Status"
msgstr ""
@@ -602,8 +602,8 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:128 order/models.py:99 order/models.py:616
-#: order/templates/order/purchase_order_detail.html:170
+#: build/models.py:128 order/models.py:101 order/models.py:618
+#: order/templates/order/purchase_order_detail.html:174
#: order/templates/order/sales_order_detail.html:225 part/models.py:2279
#: report/templates/report/inventree_po_report.html:92
#: report/templates/report/inventree_so_report.html:92 templates/js/bom.js:197
@@ -627,15 +627,15 @@ msgstr ""
#: build/models.py:153 build/templates/build/auto_allocate.html:16
#: build/templates/build/build_base.html:128
#: build/templates/build/detail.html:26 company/models.py:622
-#: order/models.py:658 order/models.py:691
+#: order/models.py:660 order/models.py:693
#: order/templates/order/order_wizard/select_parts.html:30
-#: order/templates/order/purchase_order_detail.html:131
+#: order/templates/order/purchase_order_detail.html:132
#: order/templates/order/receive_parts.html:19
#: order/templates/order/sales_order_detail.html:213 part/models.py:321
#: part/models.py:1967 part/models.py:1979 part/models.py:1997
#: part/models.py:2072 part/models.py:2168 part/models.py:2254
#: part/templates/part/part_app_base.html:8
-#: part/templates/part/part_pricing.html:8 part/templates/part/related.html:29
+#: part/templates/part/part_pricing.html:9 part/templates/part/related.html:29
#: part/templates/part/set_category.html:13
#: report/templates/report/inventree_build_order_base.html:110
#: report/templates/report/inventree_po_report.html:90
@@ -646,7 +646,7 @@ msgstr ""
#: templates/js/build.js:991 templates/js/company.js:140
#: templates/js/company.js:238 templates/js/part.js:241
#: templates/js/part.js:404 templates/js/stock.js:521
-#: templates/js/stock.js:1341
+#: templates/js/stock.js:1346
msgid "Part"
msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:213 stock/models.py:464
+#: build/models.py:213 stock/models.py:466
msgid "Batch Code"
msgstr ""
@@ -710,16 +710,16 @@ msgstr ""
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:220 order/models.py:105 part/models.py:882
+#: build/models.py:220 order/models.py:107 part/models.py:882
#: part/templates/part/detail.html:126 templates/js/order.js:293
msgid "Creation Date"
msgstr ""
-#: build/models.py:224 order/models.py:472
+#: build/models.py:224 order/models.py:474
msgid "Target completion date"
msgstr ""
-#: build/models.py:228 order/models.py:218 templates/js/build.js:798
+#: build/models.py:228 order/models.py:220 templates/js/build.js:798
msgid "Completion Date"
msgstr ""
@@ -736,7 +736,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:251 build/templates/build/build_base.html:184
-#: build/templates/build/detail.html:105 order/models.py:119
+#: build/templates/build/detail.html:105 order/models.py:121
#: order/templates/order/order_base.html:138
#: order/templates/order/sales_order_base.html:140 part/models.py:886
#: report/templates/report/inventree_build_order_base.html:159
@@ -753,30 +753,30 @@ msgstr ""
#: company/templates/company/supplier_part_base.html:78
#: company/templates/company/supplier_part_detail.html:28
#: part/templates/part/detail.html:83 part/templates/part/part_base.html:94
-#: stock/models.py:458 stock/templates/stock/item_base.html:345
+#: stock/models.py:460 stock/templates/stock/item_base.html:345
msgid "External Link"
msgstr ""
-#: build/models.py:258 part/models.py:744 stock/models.py:460
+#: build/models.py:258 part/models.py:744 stock/models.py:462
msgid "Link to external URL"
msgstr ""
#: build/models.py:262 build/templates/build/navbar.html:53
#: company/models.py:132 company/models.py:498
#: company/templates/company/navbar.html:70
-#: company/templates/company/navbar.html:73 order/models.py:123
-#: order/models.py:618 order/templates/order/po_navbar.html:29
+#: company/templates/company/navbar.html:73 order/models.py:125
+#: order/models.py:620 order/templates/order/po_navbar.html:29
#: order/templates/order/po_navbar.html:32
-#: order/templates/order/purchase_order_detail.html:209
+#: order/templates/order/purchase_order_detail.html:239
#: order/templates/order/sales_order_detail.html:278
#: order/templates/order/so_navbar.html:33
#: order/templates/order/so_navbar.html:36 part/models.py:871
#: part/templates/part/navbar.html:134
#: report/templates/report/inventree_build_order_base.html:173
#: stock/forms.py:173 stock/forms.py:317 stock/forms.py:349 stock/forms.py:377
-#: stock/models.py:530 stock/models.py:1665 stock/models.py:1767
+#: stock/models.py:532 stock/models.py:1667 stock/models.py:1769
#: stock/templates/stock/navbar.html:57 templates/js/barcode.js:37
-#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:669
+#: templates/js/bom.js:356 templates/js/stock.js:141 templates/js/stock.js:674
msgid "Notes"
msgstr ""
@@ -809,11 +809,11 @@ msgstr ""
msgid "Allocated quantity ({n}) must not exceed available quantity ({q})"
msgstr ""
-#: build/models.py:1188 order/models.py:789
+#: build/models.py:1188 order/models.py:791
msgid "StockItem is over-allocated"
msgstr ""
-#: build/models.py:1192 order/models.py:792
+#: build/models.py:1192 order/models.py:794
msgid "Allocation quantity must be greater than zero"
msgstr ""
@@ -826,17 +826,17 @@ msgstr ""
msgid "Selected stock item not found in BOM for part '{p}'"
msgstr ""
-#: build/models.py:1303 stock/templates/stock/item_base.html:317
+#: build/models.py:1316 stock/templates/stock/item_base.html:317
#: templates/InvenTree/search.html:183 templates/js/build.js:724
#: templates/navbar.html:29
msgid "Build"
msgstr ""
-#: build/models.py:1304
+#: build/models.py:1317
msgid "Build to allocate parts"
msgstr ""
-#: build/models.py:1320 part/templates/part/allocation.html:18
+#: build/models.py:1333 part/templates/part/allocation.html:18
#: part/templates/part/allocation.html:24
#: part/templates/part/allocation.html:31
#: part/templates/part/allocation.html:49
@@ -844,23 +844,23 @@ msgstr ""
#: stock/templates/stock/item_base.html:31
#: stock/templates/stock/item_base.html:339
#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:841
-#: templates/js/stock.js:1085
+#: templates/js/stock.js:1090
msgid "Stock Item"
msgstr ""
-#: build/models.py:1321
+#: build/models.py:1334
msgid "Source stock item"
msgstr ""
-#: build/models.py:1334
+#: build/models.py:1347
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1342
+#: build/models.py:1355
msgid "Install into"
msgstr ""
-#: build/models.py:1343
+#: build/models.py:1356
msgid "Destination stock item"
msgstr ""
@@ -916,7 +916,7 @@ msgstr ""
#: order/templates/order/sales_order_detail.html:75
#: order/templates/order/sales_order_detail.html:160
#: report/templates/report/inventree_test_report_base.html:75
-#: stock/models.py:452 stock/templates/stock/item_base.html:249
+#: stock/models.py:454 stock/templates/stock/item_base.html:249
#: templates/js/build.js:484
msgid "Serial Number"
msgstr ""
@@ -1037,7 +1037,7 @@ msgid "Progress"
msgstr ""
#: build/templates/build/build_base.html:170
-#: build/templates/build/detail.html:84 order/models.py:689
+#: build/templates/build/detail.html:84 order/models.py:691
#: order/templates/order/sales_order_base.html:9
#: order/templates/order/sales_order_base.html:35
#: order/templates/order/sales_order_ship.html:25
@@ -1195,7 +1195,7 @@ msgstr ""
#: build/templates/build/detail.html:70
#: stock/templates/stock/item_base.html:303 templates/js/stock.js:634
-#: templates/js/stock.js:1376 templates/js/table_filters.js:112
+#: templates/js/stock.js:1381 templates/js/table_filters.js:112
#: templates/js/table_filters.js:206
msgid "Batch"
msgstr ""
@@ -1250,7 +1250,7 @@ msgstr ""
#: company/templates/company/navbar.html:15
#: order/templates/order/po_navbar.html:14
#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15
-#: templates/js/stock.js:1014
+#: templates/js/stock.js:1019
msgid "Details"
msgstr ""
@@ -1898,7 +1898,7 @@ msgstr ""
#: company/templates/company/manufacturer_part_detail.html:26
#: company/templates/company/supplier_part_base.html:102
#: company/templates/company/supplier_part_detail.html:35
-#: order/templates/order/purchase_order_detail.html:158 part/bom.py:171
+#: order/templates/order/purchase_order_detail.html:162 part/bom.py:171
#: part/bom.py:242 templates/js/company.js:181 templates/js/company.js:307
msgid "MPN"
msgstr ""
@@ -1953,7 +1953,7 @@ msgid "Point of contact"
msgstr ""
#: company/models.py:121 company/models.py:333 company/models.py:485
-#: order/models.py:103 part/models.py:743
+#: order/models.py:105 part/models.py:743
#: report/templates/report/inventree_build_order_base.html:165
#: templates/js/company.js:188 templates/js/company.js:318
#: templates/js/part.js:497
@@ -1992,7 +1992,7 @@ msgstr ""
msgid "Does this company manufacture parts?"
msgstr ""
-#: company/models.py:305 company/models.py:456 stock/models.py:405
+#: company/models.py:305 company/models.py:456 stock/models.py:407
#: stock/templates/stock/item_base.html:235
msgid "Base Part"
msgstr ""
@@ -2022,7 +2022,7 @@ msgstr ""
#: company/models.py:466 company/templates/company/detail.html:62
#: company/templates/company/supplier_part_base.html:84
-#: company/templates/company/supplier_part_detail.html:25 order/models.py:190
+#: company/templates/company/supplier_part_detail.html:25 order/models.py:192
#: order/templates/order/order_base.html:92
#: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:175
#: part/bom.py:286 stock/templates/stock/item_base.html:364
@@ -2037,7 +2037,7 @@ msgstr ""
#: company/models.py:472 company/templates/company/supplier_part_base.html:88
#: company/templates/company/supplier_part_detail.html:26
-#: order/templates/order/purchase_order_detail.html:149 part/bom.py:176
+#: order/templates/order/purchase_order_detail.html:153 part/bom.py:176
#: part/bom.py:287
msgid "SKU"
msgstr ""
@@ -2081,8 +2081,8 @@ msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
#: company/models.py:503 company/templates/company/supplier_part_base.html:109
-#: stock/models.py:429 stock/templates/stock/item_base.html:310
-#: templates/js/stock.js:665
+#: stock/models.py:431 stock/templates/stock/item_base.html:310
+#: templates/js/stock.js:670
msgid "Packaging"
msgstr ""
@@ -2165,11 +2165,11 @@ msgstr ""
msgid "Uses default currency"
msgstr ""
-#: company/templates/company/detail.html:67 order/models.py:461
-#: order/templates/order/sales_order_base.html:94 stock/models.py:447
-#: stock/models.py:448 stock/templates/stock/item_base.html:262
+#: company/templates/company/detail.html:67 order/models.py:463
+#: order/templates/order/sales_order_base.html:94 stock/models.py:449
+#: stock/models.py:450 stock/templates/stock/item_base.html:262
#: templates/js/company.js:40 templates/js/order.js:267
-#: templates/js/stock.js:1067
+#: templates/js/stock.js:1072
msgid "Customer"
msgstr ""
@@ -2215,7 +2215,7 @@ msgstr ""
#: company/templates/company/detail_manufacturer_part.html:66
#: company/templates/company/detail_supplier_part.html:66
#: part/templates/part/bom.html:159 part/templates/part/category.html:118
-#: templates/js/stock.js:1282
+#: templates/js/stock.js:1287
msgid "New Part"
msgstr ""
@@ -2262,7 +2262,7 @@ msgstr ""
#: company/templates/company/detail_supplier_part.html:22
#: company/templates/company/manufacturer_part_suppliers.html:17
#: order/templates/order/purchase_order_detail.html:49
-#: part/templates/part/supplier.html:17 templates/js/stock.js:1288
+#: part/templates/part/supplier.html:17 templates/js/stock.js:1293
msgid "New Supplier Part"
msgstr ""
@@ -2385,7 +2385,7 @@ msgstr ""
#: stock/templates/stock/location.html:136
#: stock/templates/stock/location_navbar.html:22
#: stock/templates/stock/location_navbar.html:29
-#: templates/InvenTree/search.html:198 templates/js/stock.js:966
+#: templates/InvenTree/search.html:198 templates/js/stock.js:971
#: templates/stats.html:93 templates/stats.html:102 users/models.py:42
msgid "Stock Items"
msgstr ""
@@ -2441,7 +2441,7 @@ msgid "New Sales Order"
msgstr ""
#: company/templates/company/supplier_part_base.html:7
-#: company/templates/company/supplier_part_base.html:20 stock/models.py:414
+#: company/templates/company/supplier_part_base.html:20 stock/models.py:416
#: stock/templates/stock/item_base.html:369 templates/js/company.js:279
msgid "Supplier Part"
msgstr ""
@@ -2598,7 +2598,7 @@ msgstr ""
msgid "Edit Supplier Part"
msgstr ""
-#: company/views.py:578 templates/js/stock.js:1289
+#: company/views.py:578 templates/js/stock.js:1294
msgid "Create new Supplier Part"
msgstr ""
@@ -2712,7 +2712,7 @@ msgstr ""
msgid "Enter sales order number"
msgstr ""
-#: order/forms.py:145 order/models.py:473
+#: order/forms.py:145 order/models.py:475
msgid "Target date for order completion. Order will be overdue after this date."
msgstr ""
@@ -2724,209 +2724,209 @@ msgstr ""
msgid "Enter quantity of stock items"
msgstr ""
-#: order/models.py:99
+#: order/models.py:101
msgid "Order reference"
msgstr ""
-#: order/models.py:101
+#: order/models.py:103
msgid "Order description"
msgstr ""
-#: order/models.py:103
+#: order/models.py:105
msgid "Link to external page"
msgstr ""
-#: order/models.py:111 part/templates/part/detail.html:132
+#: order/models.py:113 part/templates/part/detail.html:132
msgid "Created By"
msgstr ""
-#: order/models.py:118
+#: order/models.py:120
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:123
+#: order/models.py:125
msgid "Order notes"
msgstr ""
-#: order/models.py:182 order/models.py:466
+#: order/models.py:184 order/models.py:468
msgid "Purchase order status"
msgstr ""
-#: order/models.py:191
+#: order/models.py:193
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:194 order/templates/order/order_base.html:98
+#: order/models.py:196 order/templates/order/order_base.html:98
#: templates/js/order.js:179
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:194
+#: order/models.py:196
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:201
+#: order/models.py:203
msgid "received by"
msgstr ""
-#: order/models.py:206
+#: order/models.py:208
msgid "Issue Date"
msgstr ""
-#: order/models.py:207
+#: order/models.py:209
msgid "Date order was issued"
msgstr ""
-#: order/models.py:212
+#: order/models.py:214
msgid "Target Delivery Date"
msgstr ""
-#: order/models.py:213
+#: order/models.py:215
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:219
+#: order/models.py:221
msgid "Date order was completed"
msgstr ""
-#: order/models.py:243 part/views.py:1675 stock/models.py:302
-#: stock/models.py:1018
+#: order/models.py:245 part/views.py:1675 stock/models.py:304
+#: stock/models.py:1020
msgid "Quantity must be greater than zero"
msgstr ""
-#: order/models.py:248
+#: order/models.py:250
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:346
+#: order/models.py:348
msgid "Lines can only be received against an order marked as 'Placed'"
msgstr ""
-#: order/models.py:350
+#: order/models.py:352
msgid "Quantity must be an integer"
msgstr ""
-#: order/models.py:352
+#: order/models.py:354
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:462
+#: order/models.py:464
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer Reference "
msgstr ""
-#: order/models.py:468
+#: order/models.py:470
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:476 templates/js/order.js:303
+#: order/models.py:478 templates/js/order.js:303
msgid "Shipment Date"
msgstr ""
-#: order/models.py:483
+#: order/models.py:485
msgid "shipped by"
msgstr ""
-#: order/models.py:527
+#: order/models.py:529
msgid "SalesOrder cannot be shipped as it is not currently pending"
msgstr ""
-#: order/models.py:614
+#: order/models.py:616
msgid "Item quantity"
msgstr ""
-#: order/models.py:616
+#: order/models.py:618
msgid "Line item reference"
msgstr ""
-#: order/models.py:618
+#: order/models.py:620
msgid "Line item notes"
msgstr ""
-#: order/models.py:644 order/models.py:689
+#: order/models.py:646 order/models.py:691
#: part/templates/part/allocation.html:17
#: part/templates/part/allocation.html:45
msgid "Order"
msgstr ""
-#: order/models.py:645 order/templates/order/order_base.html:9
+#: order/models.py:647 order/templates/order/order_base.html:9
#: order/templates/order/order_base.html:24
#: report/templates/report/inventree_po_report.html:77
#: stock/templates/stock/item_base.html:324 templates/js/order.js:148
-#: templates/js/stock.js:1048
+#: templates/js/stock.js:1053
msgid "Purchase Order"
msgstr ""
-#: order/models.py:659
+#: order/models.py:661
msgid "Supplier part"
msgstr ""
-#: order/models.py:662 order/templates/order/order_base.html:131
-#: order/templates/order/purchase_order_detail.html:189
+#: order/models.py:664 order/templates/order/order_base.html:131
+#: order/templates/order/purchase_order_detail.html:219
#: order/templates/order/receive_parts.html:22
#: order/templates/order/sales_order_base.html:133
msgid "Received"
msgstr ""
-#: order/models.py:662
+#: order/models.py:664
msgid "Number of items received"
msgstr ""
-#: order/models.py:669 stock/models.py:540
-#: stock/templates/stock/item_base.html:331
+#: order/models.py:671 stock/models.py:542
+#: stock/templates/stock/item_base.html:331 templates/js/stock.js:665
msgid "Purchase Price"
msgstr ""
-#: order/models.py:670
+#: order/models.py:672
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:698 part/templates/part/navbar.html:101
+#: order/models.py:700 part/templates/part/navbar.html:101
#: part/templates/part/order_prices.html:82
-#: part/templates/part/part_pricing.html:77
+#: part/templates/part/part_pricing.html:78
msgid "Sale Price"
msgstr ""
-#: order/models.py:699
+#: order/models.py:701
msgid "Unit sale price"
msgstr ""
-#: order/models.py:774 order/models.py:776
+#: order/models.py:776 order/models.py:778
msgid "Stock item has not been assigned"
msgstr ""
-#: order/models.py:780
+#: order/models.py:782
msgid "Cannot allocate stock item to a line with a different part"
msgstr ""
-#: order/models.py:782
+#: order/models.py:784
msgid "Cannot allocate stock to a line without a part"
msgstr ""
-#: order/models.py:785
+#: order/models.py:787
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:795
+#: order/models.py:797
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
-#: order/models.py:800
+#: order/models.py:802
msgid "Line"
msgstr ""
-#: order/models.py:811
+#: order/models.py:813
msgid "Item"
msgstr ""
-#: order/models.py:812
+#: order/models.py:814
msgid "Select stock item to allocate"
msgstr ""
-#: order/models.py:815
+#: order/models.py:817
msgid "Enter stock allocation quantity"
msgstr ""
@@ -2977,8 +2977,8 @@ msgstr ""
#: order/templates/order/order_base.html:180
#: order/templates/order/purchase_order_detail.html:100
#: part/templates/part/category.html:208 part/templates/part/category.html:250
-#: stock/templates/stock/location.html:191 templates/js/stock.js:706
-#: templates/js/stock.js:1294
+#: stock/templates/stock/location.html:191 templates/js/stock.js:711
+#: templates/js/stock.js:1299
msgid "New Location"
msgstr ""
@@ -3162,21 +3162,25 @@ msgstr ""
msgid "No line items found"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:180
+#: order/templates/order/purchase_order_detail.html:191
#: order/templates/order/sales_order_detail.html:235
msgid "Unit Price"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:221
+#: order/templates/order/purchase_order_detail.html:198
+msgid "Total price"
+msgstr ""
+
+#: order/templates/order/purchase_order_detail.html:251
#: order/templates/order/sales_order_detail.html:328
msgid "Edit line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:222
+#: order/templates/order/purchase_order_detail.html:252
msgid "Delete line item"
msgstr ""
-#: order/templates/order/purchase_order_detail.html:227
+#: order/templates/order/purchase_order_detail.html:257
msgid "Receive line item"
msgstr ""
@@ -4064,7 +4068,7 @@ msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
#: part/models.py:2371 part/views.py:1681 part/views.py:1733
-#: stock/models.py:292
+#: stock/models.py:294
msgid "Quantity must be integer value for trackable parts"
msgstr ""
@@ -4173,7 +4177,7 @@ msgid "All selected BOM items will be deleted"
msgstr ""
#: part/templates/part/bom.html:160 part/views.py:585
-#: templates/js/stock.js:1283
+#: templates/js/stock.js:1288
msgid "Create New Part"
msgstr ""
@@ -4314,7 +4318,7 @@ msgid "View grid display"
msgstr ""
#: part/templates/part/category.html:209
-#: stock/templates/stock/location.html:192 templates/js/stock.js:707
+#: stock/templates/stock/location.html:192 templates/js/stock.js:712
msgid "Create new location"
msgstr ""
@@ -4408,7 +4412,7 @@ msgstr ""
msgid "Part Details"
msgstr ""
-#: part/templates/part/detail.html:42
+#: part/templates/part/detail.html:42 part/templates/part/part_base.html:188
msgid "Latest Serial Number"
msgstr ""
@@ -4551,51 +4555,51 @@ msgid "Pricing ranges"
msgstr ""
#: part/templates/part/order_prices.html:26
-#: part/templates/part/part_pricing.html:18
+#: part/templates/part/part_pricing.html:19
msgid "Supplier Pricing"
msgstr ""
#: part/templates/part/order_prices.html:27
#: part/templates/part/order_prices.html:52
#: part/templates/part/order_prices.html:83
-#: part/templates/part/part_pricing.html:22
-#: part/templates/part/part_pricing.html:48
-#: part/templates/part/part_pricing.html:80
+#: part/templates/part/part_pricing.html:23
+#: part/templates/part/part_pricing.html:49
+#: part/templates/part/part_pricing.html:81
msgid "Unit Cost"
msgstr ""
#: part/templates/part/order_prices.html:34
#: part/templates/part/order_prices.html:59
#: part/templates/part/order_prices.html:88
-#: part/templates/part/part_pricing.html:28
-#: part/templates/part/part_pricing.html:54
-#: part/templates/part/part_pricing.html:84
+#: part/templates/part/part_pricing.html:29
+#: part/templates/part/part_pricing.html:55
+#: part/templates/part/part_pricing.html:85
msgid "Total Cost"
msgstr ""
#: part/templates/part/order_prices.html:42
-#: part/templates/part/part_pricing.html:36
+#: part/templates/part/part_pricing.html:37
msgid "No supplier pricing available"
msgstr ""
#: part/templates/part/order_prices.html:51
#: part/templates/part/order_prices.html:103
-#: part/templates/part/part_pricing.html:44
+#: part/templates/part/part_pricing.html:45
msgid "BOM Pricing"
msgstr ""
#: part/templates/part/order_prices.html:67
-#: part/templates/part/part_pricing.html:62
+#: part/templates/part/part_pricing.html:63
msgid "Note: BOM pricing is incomplete for this part"
msgstr ""
#: part/templates/part/order_prices.html:74
-#: part/templates/part/part_pricing.html:69
+#: part/templates/part/part_pricing.html:70
msgid "No BOM pricing available"
msgstr ""
#: part/templates/part/order_prices.html:97
-#: part/templates/part/part_pricing.html:93
+#: part/templates/part/part_pricing.html:94
msgid "No pricing information is available for this part."
msgstr ""
@@ -4634,7 +4638,7 @@ msgstr ""
#: part/templates/part/params.html:28
#: report/templates/report/inventree_test_report_base.html:90
-#: stock/models.py:1754 templates/InvenTree/settings/header.html:8
+#: stock/models.py:1756 templates/InvenTree/settings/header.html:8
#: templates/js/stock.js:137
msgid "Value"
msgstr ""
@@ -4740,7 +4744,7 @@ msgstr ""
msgid "Building"
msgstr ""
-#: part/templates/part/part_base.html:257
+#: part/templates/part/part_base.html:265
msgid "Calculate"
msgstr ""
@@ -4849,7 +4853,7 @@ msgstr ""
msgid "New Variant"
msgstr ""
-#: part/templatetags/inventree_extras.py:97
+#: part/templatetags/inventree_extras.py:98
msgid "Unknown database"
msgstr ""
@@ -5160,17 +5164,17 @@ msgid "Test Results"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:88
-#: stock/models.py:1742
+#: stock/models.py:1744
msgid "Test"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:89
-#: stock/models.py:1748
+#: stock/models.py:1750
msgid "Result"
msgstr ""
#: report/templates/report/inventree_test_report_base.html:92
-#: templates/js/order.js:195 templates/js/stock.js:982
+#: templates/js/order.js:195 templates/js/stock.js:987
msgid "Date"
msgstr ""
@@ -5192,7 +5196,7 @@ msgstr ""
msgid "Moved {n} parts to {loc}"
msgstr ""
-#: stock/forms.py:114 stock/forms.py:418 stock/models.py:507
+#: stock/forms.py:114 stock/forms.py:418 stock/models.py:509
#: stock/templates/stock/item_base.html:376 templates/js/stock.js:654
msgid "Expiry Date"
msgstr ""
@@ -5282,187 +5286,187 @@ msgstr ""
msgid "Set the destination as the default location for selected parts"
msgstr ""
-#: stock/models.py:54 stock/models.py:545
+#: stock/models.py:56 stock/models.py:547
msgid "Owner"
msgstr ""
-#: stock/models.py:55 stock/models.py:546
+#: stock/models.py:57 stock/models.py:548
msgid "Select Owner"
msgstr ""
-#: stock/models.py:273
+#: stock/models.py:275
msgid "StockItem with this serial number already exists"
msgstr ""
-#: stock/models.py:309
+#: stock/models.py:311
#, python-brace-format
msgid "Part type ('{pf}') must be {pe}"
msgstr ""
-#: stock/models.py:319 stock/models.py:328
+#: stock/models.py:321 stock/models.py:330
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:320
+#: stock/models.py:322
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:342
+#: stock/models.py:344
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:348
+#: stock/models.py:350
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:355
+#: stock/models.py:357
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:397
+#: stock/models.py:399
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:406
+#: stock/models.py:408
msgid "Base part"
msgstr ""
-#: stock/models.py:415
+#: stock/models.py:417
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:420 stock/templates/stock/stock_app_base.html:8
+#: stock/models.py:422 stock/templates/stock/stock_app_base.html:8
msgid "Stock Location"
msgstr ""
-#: stock/models.py:423
+#: stock/models.py:425
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:430
+#: stock/models.py:432
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:435 stock/templates/stock/item_base.html:270
+#: stock/models.py:437 stock/templates/stock/item_base.html:270
msgid "Installed In"
msgstr ""
-#: stock/models.py:438
+#: stock/models.py:440
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:454
+#: stock/models.py:456
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:466
+#: stock/models.py:468
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:470
+#: stock/models.py:472
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:479
+#: stock/models.py:481
msgid "Source Build"
msgstr ""
-#: stock/models.py:481
+#: stock/models.py:483
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:492
+#: stock/models.py:494
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:495
+#: stock/models.py:497
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:501
+#: stock/models.py:503
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:508
+#: stock/models.py:510
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:521
+#: stock/models.py:523
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:531 stock/templates/stock/item_notes.html:13
+#: stock/models.py:533 stock/templates/stock/item_notes.html:13
#: stock/templates/stock/navbar.html:54
msgid "Stock Item Notes"
msgstr ""
-#: stock/models.py:541
+#: stock/models.py:543
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1009
+#: stock/models.py:1011
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1017
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1021
+#: stock/models.py:1023
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({n})"
msgstr ""
-#: stock/models.py:1024
+#: stock/models.py:1026
msgid "Serial numbers must be a list of integers"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1029
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1034
+#: stock/models.py:1036
#, python-brace-format
msgid "Serial numbers already exist: {exists}"
msgstr ""
-#: stock/models.py:1192
+#: stock/models.py:1194
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:1666
+#: stock/models.py:1668
msgid "Entry notes"
msgstr ""
-#: stock/models.py:1719
+#: stock/models.py:1721
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:1725
+#: stock/models.py:1727
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:1743
+#: stock/models.py:1745
msgid "Test name"
msgstr ""
-#: stock/models.py:1749 templates/js/table_filters.js:217
+#: stock/models.py:1751 templates/js/table_filters.js:217
msgid "Test result"
msgstr ""
-#: stock/models.py:1755
+#: stock/models.py:1757
msgid "Test output value"
msgstr ""
-#: stock/models.py:1762
+#: stock/models.py:1764
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:1768
+#: stock/models.py:1770
msgid "Test notes"
msgstr ""
@@ -6580,7 +6584,7 @@ msgid "No builds matching query"
msgstr ""
#: templates/js/build.js:718 templates/js/part.js:390 templates/js/part.js:634
-#: templates/js/stock.js:509 templates/js/stock.js:936
+#: templates/js/stock.js:509 templates/js/stock.js:941
msgid "Select"
msgstr ""
@@ -6831,7 +6835,7 @@ msgstr ""
msgid "Low stock"
msgstr ""
-#: templates/js/part.js:659 templates/js/stock.js:960
+#: templates/js/part.js:659 templates/js/stock.js:965
msgid "Path"
msgstr ""
@@ -7029,75 +7033,75 @@ msgstr ""
msgid "Stocktake"
msgstr ""
-#: templates/js/stock.js:823
+#: templates/js/stock.js:828
msgid "Stock Status"
msgstr ""
-#: templates/js/stock.js:838
+#: templates/js/stock.js:843
msgid "Set Stock Status"
msgstr ""
-#: templates/js/stock.js:852
+#: templates/js/stock.js:857
msgid "Select Status Code"
msgstr ""
-#: templates/js/stock.js:853
+#: templates/js/stock.js:858
msgid "Status code must be selected"
msgstr ""
-#: templates/js/stock.js:992
+#: templates/js/stock.js:997
msgid "Invalid date"
msgstr ""
-#: templates/js/stock.js:1039
+#: templates/js/stock.js:1044
msgid "Location no longer exists"
msgstr ""
-#: templates/js/stock.js:1058
+#: templates/js/stock.js:1063
msgid "Purchase order no longer exists"
msgstr ""
-#: templates/js/stock.js:1077
+#: templates/js/stock.js:1082
msgid "Customer no longer exists"
msgstr ""
-#: templates/js/stock.js:1095
+#: templates/js/stock.js:1100
msgid "Stock item no longer exists"
msgstr ""
-#: templates/js/stock.js:1118
+#: templates/js/stock.js:1123
msgid "Added"
msgstr ""
-#: templates/js/stock.js:1126
+#: templates/js/stock.js:1131
msgid "Removed"
msgstr ""
-#: templates/js/stock.js:1158
+#: templates/js/stock.js:1163
msgid "No user information"
msgstr ""
-#: templates/js/stock.js:1170
+#: templates/js/stock.js:1175
msgid "Edit tracking entry"
msgstr ""
-#: templates/js/stock.js:1171
+#: templates/js/stock.js:1176
msgid "Delete tracking entry"
msgstr ""
-#: templates/js/stock.js:1295
+#: templates/js/stock.js:1300
msgid "Create New Location"
msgstr ""
-#: templates/js/stock.js:1336
+#: templates/js/stock.js:1341
msgid "No installed items"
msgstr ""
-#: templates/js/stock.js:1359
+#: templates/js/stock.js:1364
msgid "Serial"
msgstr ""
-#: templates/js/stock.js:1387
+#: templates/js/stock.js:1392
msgid "Uninstall Stock Item"
msgstr ""
diff --git a/InvenTree/order/fixtures/order.yaml b/InvenTree/order/fixtures/order.yaml
index 6b65c20786..769f7702e5 100644
--- a/InvenTree/order/fixtures/order.yaml
+++ b/InvenTree/order/fixtures/order.yaml
@@ -68,6 +68,7 @@
order: 1
part: 1
quantity: 100
+ destination: 5 # Desk/Drawer_1
# 250 x ACME0002 (M2x4 LPHS)
# Partially received (50)
@@ -95,3 +96,10 @@
part: 3
quantity: 100
+# 1 x R_4K7_0603
+- model: order.purchaseorderlineitem
+ pk: 23
+ fields:
+ order: 1
+ part: 5
+ quantity: 1
diff --git a/InvenTree/order/forms.py b/InvenTree/order/forms.py
index 3973888e95..effa696d43 100644
--- a/InvenTree/order/forms.py
+++ b/InvenTree/order/forms.py
@@ -79,12 +79,17 @@ class ShipSalesOrderForm(HelperForm):
class ReceivePurchaseOrderForm(HelperForm):
- location = TreeNodeChoiceField(queryset=StockLocation.objects.all(), required=True, label=_('Location'), help_text=_('Receive parts to this location'))
+ location = TreeNodeChoiceField(
+ queryset=StockLocation.objects.all(),
+ required=True,
+ label=_("Destination"),
+ help_text=_("Receive parts to this location"),
+ )
class Meta:
model = PurchaseOrder
fields = [
- 'location',
+ "location",
]
@@ -195,6 +200,7 @@ class EditPurchaseOrderLineItemForm(HelperForm):
'quantity',
'reference',
'purchase_price',
+ 'destination',
'notes',
]
diff --git a/InvenTree/order/migrations/0046_purchaseorderlineitem_destination.py b/InvenTree/order/migrations/0046_purchaseorderlineitem_destination.py
new file mode 100644
index 0000000000..fa08c91e0d
--- /dev/null
+++ b/InvenTree/order/migrations/0046_purchaseorderlineitem_destination.py
@@ -0,0 +1,29 @@
+# Generated by Django 3.2 on 2021-05-13 22:38
+
+from django.db import migrations
+import django.db.models.deletion
+import mptt.fields
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ("stock", "0063_auto_20210511_2343"),
+ ("order", "0045_auto_20210504_1946"),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name="purchaseorderlineitem",
+ name="destination",
+ field=mptt.fields.TreeForeignKey(
+ blank=True,
+ help_text="Where does the Purchaser want this item to be stored?",
+ null=True,
+ on_delete=django.db.models.deletion.DO_NOTHING,
+ related_name="po_lines",
+ to="stock.stocklocation",
+ verbose_name="Destination",
+ ),
+ ),
+ ]
diff --git a/InvenTree/order/models.py b/InvenTree/order/models.py
index 49504b6d89..c150331f94 100644
--- a/InvenTree/order/models.py
+++ b/InvenTree/order/models.py
@@ -20,6 +20,7 @@ from django.utils.translation import ugettext_lazy as _
from common.settings import currency_code_default
from markdownx.models import MarkdownxField
+from mptt.models import TreeForeignKey
from djmoney.models.fields import MoneyField
@@ -672,6 +673,29 @@ class PurchaseOrderLineItem(OrderLineItem):
help_text=_('Unit purchase price'),
)
+ destination = TreeForeignKey(
+ 'stock.StockLocation', on_delete=models.DO_NOTHING,
+ verbose_name=_('Destination'),
+ related_name='po_lines',
+ blank=True, null=True,
+ help_text=_('Where does the Purchaser want this item to be stored?')
+ )
+
+ def get_destination(self):
+ """Show where the line item is or should be placed"""
+ # NOTE: If a line item gets split when recieved, only an arbitrary
+ # stock items location will be reported as the location for the
+ # entire line.
+ for stock in stock_models.StockItem.objects.filter(
+ supplier_part=self.part, purchase_order=self.order
+ ):
+ if stock.location:
+ return stock.location
+ if self.destination:
+ return self.destination
+ if self.part and self.part.part and self.part.part.default_location:
+ return self.part.part.default_location
+
def remaining(self):
""" Calculate the number of items remaining to be received """
r = self.quantity - self.received
diff --git a/InvenTree/order/serializers.py b/InvenTree/order/serializers.py
index 6091140313..a50c72e13e 100644
--- a/InvenTree/order/serializers.py
+++ b/InvenTree/order/serializers.py
@@ -17,6 +17,7 @@ from InvenTree.serializers import InvenTreeAttachmentSerializerField
from company.serializers import CompanyBriefSerializer, SupplierPartSerializer
from part.serializers import PartBriefSerializer
+from stock.serializers import LocationBriefSerializer
from .models import PurchaseOrder, PurchaseOrderLineItem
from .models import PurchaseOrderAttachment, SalesOrderAttachment
@@ -116,6 +117,8 @@ class POLineItemSerializer(InvenTreeModelSerializer):
purchase_price_string = serializers.CharField(source='purchase_price', read_only=True)
+ destination = LocationBriefSerializer(source='get_destination', read_only=True)
+
class Meta:
model = PurchaseOrderLineItem
@@ -132,6 +135,7 @@ class POLineItemSerializer(InvenTreeModelSerializer):
'purchase_price',
'purchase_price_currency',
'purchase_price_string',
+ 'destination',
]
diff --git a/InvenTree/order/templates/order/purchase_order_detail.html b/InvenTree/order/templates/order/purchase_order_detail.html
index ef844409fd..0ad73923a2 100644
--- a/InvenTree/order/templates/order/purchase_order_detail.html
+++ b/InvenTree/order/templates/order/purchase_order_detail.html
@@ -117,6 +117,7 @@ $("#po-table").inventreeTable({
part_detail: true,
},
url: "{% url 'api-po-line-list' %}",
+ showFooter: true,
columns: [
{
field: 'pk',
@@ -137,6 +138,9 @@ $("#po-table").inventreeTable({
return '-';
}
},
+ footerFormatter: function() {
+ return '{% trans "Total" %}'
+ }
},
{
field: 'part_detail.description',
@@ -172,7 +176,14 @@ $("#po-table").inventreeTable({
{
sortable: true,
field: 'quantity',
- title: '{% trans "Quantity" %}'
+ title: '{% trans "Quantity" %}',
+ footerFormatter: function(data) {
+ return data.map(function (row) {
+ return +row['quantity']
+ }).reduce(function (sum, i) {
+ return sum + i
+ }, 0)
+ }
},
{
sortable: true,
@@ -182,6 +193,25 @@ $("#po-table").inventreeTable({
return row.purchase_price_string || row.purchase_price;
}
},
+ {
+ sortable: true,
+ title: '{% trans "Total price" %}',
+ formatter: function(value, row) {
+ var total = row.purchase_price * row.quantity;
+ var formatter = new Intl.NumberFormat('en-US', {style: 'currency', currency: row.purchase_price_currency});
+ return formatter.format(total)
+ },
+ footerFormatter: function(data) {
+ var total = data.map(function (row) {
+ return +row['purchase_price']*row['quantity']
+ }).reduce(function (sum, i) {
+ return sum + i
+ }, 0)
+ var currency = (data.slice(-1)[0] && data.slice(-1)[0].purchase_price_currency) || 'USD';
+ var formatter = new Intl.NumberFormat('en-US', {style: 'currency', currency: currency});
+ return formatter.format(total)
+ }
+ },
{
sortable: true,
field: 'received',
@@ -204,6 +234,10 @@ $("#po-table").inventreeTable({
return (progressA < progressB) ? 1 : -1;
}
},
+ {
+ field: 'destination.pathstring',
+ title: '{% trans "Destination" %}',
+ },
{
field: 'notes',
title: '{% trans "Notes" %}',
diff --git a/InvenTree/order/templates/order/receive_parts.html b/InvenTree/order/templates/order/receive_parts.html
index 35ce4b6513..bfddf01ce9 100644
--- a/InvenTree/order/templates/order/receive_parts.html
+++ b/InvenTree/order/templates/order/receive_parts.html
@@ -22,6 +22,7 @@
{% trans "Received" %} |
{% trans "Receive" %} |
{% trans "Status" %} |
+ {% trans "Destination" %} |
|
{% for line in lines %}
@@ -53,6 +54,9 @@
+
+ {{ line.get_destination }}
+ |
|