From 5567ad07fdac3c25fad79971dec0890a2c2eaa43 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Wed, 11 Nov 2020 00:31:39 +1100 Subject: [PATCH] Update tests and translations --- InvenTree/locale/de/LC_MESSAGES/django.mo | Bin 46068 -> 45419 bytes InvenTree/locale/de/LC_MESSAGES/django.po | 836 +++++++++++----------- InvenTree/locale/en/LC_MESSAGES/django.po | 775 ++++++++++---------- InvenTree/locale/es/LC_MESSAGES/django.po | 775 ++++++++++---------- InvenTree/users/models.py | 2 + 5 files changed, 1182 insertions(+), 1206 deletions(-) diff --git a/InvenTree/locale/de/LC_MESSAGES/django.mo b/InvenTree/locale/de/LC_MESSAGES/django.mo index ccc97446bab5beb633a0e87b02aca50649994afc..4d57b3c49d2dc0d1dad23269c4ccba3b011a5fa5 100644 GIT binary patch delta 14450 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 WSG>|6&e$HFet2C-_S8)25B~?${`Hpt delta 15016 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 G_x=lR+pY@$ diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 00c43092f0..242061af16 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-09 12:47+0000\n" +"POT-Creation-Date: 2020-11-10 13:31+0000\n" "PO-Revision-Date: 2020-05-03 11:32+0200\n" "Last-Translator: Christian Schlüter \n" "Language-Team: C \n" @@ -25,27 +25,27 @@ msgstr "Keine Aktion angegeben" msgid "No matching action found" msgstr "Keine passende Aktion gefunden" -#: InvenTree/forms.py:130 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "Bestätigen" -#: InvenTree/forms.py:146 +#: InvenTree/forms.py:123 #, fuzzy #| msgid "Confim BOM item deletion" msgid "Confirm item deletion" msgstr "Löschung von BOM-Position bestätigen" -#: InvenTree/forms.py:178 +#: InvenTree/forms.py:155 #, fuzzy #| msgid "Create new part" msgid "Enter new password" msgstr "Neues Teil anlegen" -#: InvenTree/forms.py:185 +#: InvenTree/forms.py:162 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:220 +#: InvenTree/forms.py:197 msgid "Apply Theme" msgstr "" @@ -107,19 +107,19 @@ msgstr "Name" msgid "Description (optional)" msgstr "Firmenbeschreibung" -#: InvenTree/settings.py:348 +#: InvenTree/settings.py:350 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:349 +#: InvenTree/settings.py:351 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:352 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:353 msgid "Polish" msgstr "Polnisch" @@ -306,7 +306,7 @@ msgstr "Bestell-Referenz" #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 #: part/templates/part/allocation.html:49 -#: part/templates/part/sale_prices.html:80 stock/forms.py:297 +#: part/templates/part/sale_prices.html:82 stock/forms.py:298 #: stock/templates/stock/item_base.html:40 #: stock/templates/stock/item_base.html:46 #: stock/templates/stock/item_base.html:197 @@ -391,14 +391,13 @@ msgstr "Lagerobjekt für Zuordnung auswählen" #: build/models.py:56 build/templates/build/build_base.html:8 #: build/templates/build/build_base.html:35 #: part/templates/part/allocation.html:20 -#: stock/templates/stock/item_base.html:227 msgid "Build Order" msgstr "Bauauftrag" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 msgid "Build Orders" msgstr "Bauaufträge" @@ -520,7 +519,7 @@ msgstr "Bau-Status" msgid "Build status code" msgstr "Bau-Statuscode" -#: build/models.py:157 stock/models.py:389 +#: build/models.py:157 stock/models.py:390 msgid "Batch Code" msgstr "Losnummer" @@ -532,11 +531,11 @@ msgstr "Chargennummer für diese Bau-Ausgabe" #: company/templates/company/supplier_part_base.html:68 #: company/templates/company/supplier_part_detail.html:24 #: part/templates/part/detail.html:80 part/templates/part/part_base.html:102 -#: stock/models.py:383 stock/templates/stock/item_base.html:279 +#: stock/models.py:384 stock/templates/stock/item_base.html:280 msgid "External Link" msgstr "Externer Link" -#: build/models.py:177 part/models.py:597 stock/models.py:385 +#: build/models.py:177 part/models.py:609 stock/models.py:386 msgid "Link to external URL" msgstr "Link zu einer externen URL" @@ -544,8 +543,8 @@ msgstr "Link zu einer externen URL" #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 -#: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 -#: stock/models.py:1428 stock/templates/stock/tabs.html:26 +#: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 +#: stock/models.py:1432 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 #: templates/js/stock.js:116 templates/js/stock.js:578 msgid "Notes" @@ -620,11 +619,11 @@ msgstr "Bau starten um Teile zuzuweisen" msgid "Source stock item" msgstr "Bestand entfernen" -#: build/models.py:976 +#: build/models.py:975 msgid "Stock quantity to allocate to build" msgstr "Lagerobjekt-Anzahl dem Bau zuweisen" -#: build/models.py:984 +#: build/models.py:983 #, fuzzy #| msgid "Destination stock location" msgid "Destination stock item" @@ -709,8 +708,8 @@ msgid "" "The following stock items will be allocated to the specified build output" msgstr "Lagerobjekt dem Bau zuweisen" -#: build/templates/build/auto_allocate.html:18 stock/forms.py:336 -#: stock/templates/stock/item_base.html:233 +#: build/templates/build/auto_allocate.html:18 stock/forms.py:337 +#: stock/templates/stock/item_base.html:227 #: stock/templates/stock/stock_adjust.html:17 #: templates/InvenTree/search.html:183 templates/js/barcode.js:337 #: templates/js/build.js:418 templates/js/stock.js:570 @@ -778,7 +777,7 @@ msgstr "Bau-Status" #: build/templates/build/build_base.html:83 #: build/templates/build/detail.html:57 #: order/templates/order/receive_parts.html:24 -#: stock/templates/stock/item_base.html:311 templates/InvenTree/search.html:175 +#: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 #: templates/js/order.js:172 templates/js/order.js:254 #: templates/js/stock.js:557 templates/js/stock.js:961 @@ -918,7 +917,7 @@ msgstr "Lagerobjekt" msgid "Stock can be taken from any available location." msgstr "Bestand kann jedem verfügbaren Lagerort entnommen werden." -#: build/templates/build/detail.html:44 stock/forms.py:364 +#: build/templates/build/detail.html:44 stock/forms.py:365 #, fuzzy #| msgid "Description" msgid "Destination" @@ -931,7 +930,7 @@ msgid "Destination location not specified" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" #: build/templates/build/detail.html:68 -#: stock/templates/stock/item_base.html:251 templates/js/stock.js:565 +#: stock/templates/stock/item_base.html:245 templates/js/stock.js:565 #: templates/js/stock.js:968 templates/js/table_filters.js:80 #: templates/js/table_filters.js:151 msgid "Batch" @@ -1036,7 +1035,7 @@ msgstr "Lagerbestand dem Bau zuweisen" msgid "Create Build Output" msgstr "Bau-Ausgabe" -#: build/views.py:207 stock/models.py:832 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1647 #, fuzzy #| msgid "Serial numbers already exist: " msgid "Serial numbers already exist" @@ -1175,7 +1174,7 @@ msgstr "Bauobjekt aktualisiert" msgid "Add Build Order Attachment" msgstr "Auftragsanhang hinzufügen" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 #: stock/views.py:176 msgid "Added attachment" msgstr "Anhang hinzugefügt" @@ -1196,188 +1195,201 @@ msgstr "Anhang löschen" msgid "Deleted attachment" msgstr "Anhang gelöscht" -#: common/models.py:51 +#: common/models.py:55 #, fuzzy #| msgid "Instance Name" msgid "InvenTree Instance Name" msgstr "Instanzname" -#: common/models.py:53 +#: common/models.py:57 #, fuzzy #| msgid "Brief description of the build" msgid "String descriptor for the server instance" msgstr "Kurze Beschreibung des Baus" -#: common/models.py:57 company/models.py:89 company/models.py:90 +#: common/models.py:61 company/models.py:89 company/models.py:90 msgid "Company name" msgstr "Firmenname" -#: common/models.py:58 +#: common/models.py:62 #, fuzzy #| msgid "Company name" msgid "Internal company name" msgstr "Firmenname" -#: common/models.py:63 +#: common/models.py:67 +#, fuzzy +#| msgid "Delete Currency" +msgid "Default Currency" +msgstr "Währung entfernen" + +#: common/models.py:68 +#, fuzzy +#| msgid "Delete Currency" +msgid "Default currency" +msgstr "Währung entfernen" + +#: common/models.py:74 msgid "IPN Regex" msgstr "" -#: common/models.py:64 +#: common/models.py:75 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:68 +#: common/models.py:79 +#, fuzzy +#| msgid "Duplicate Part" +msgid "Allow Duplicate IPN" +msgstr "Teil duplizieren" + +#: common/models.py:80 +msgid "Allow multiple parts to share the same IPN" +msgstr "" + +#: common/models.py:86 #, fuzzy #| msgid "Import BOM data" msgid "Copy Part BOM Data" msgstr "Stückliste importieren" -#: common/models.py:69 +#: common/models.py:87 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:75 +#: common/models.py:93 #, fuzzy #| msgid "Parameters" msgid "Copy Part Parameter Data" msgstr "Parameter" -#: common/models.py:76 +#: common/models.py:94 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:82 +#: common/models.py:100 #, fuzzy #| msgid "Parameters" msgid "Copy Part Test Data" msgstr "Parameter" -#: common/models.py:83 +#: common/models.py:101 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:89 part/models.py:668 part/templates/part/detail.html:168 +#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "Komponente" -#: common/models.py:90 +#: common/models.py:108 #, fuzzy #| msgid "Part can be used in assemblies" msgid "Parts can be used as sub-components by default" msgstr "Teil kann in Baugruppen benutzt werden" -#: common/models.py:96 part/models.py:679 part/templates/part/detail.html:188 +#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "Kaufbar" -#: common/models.py:97 +#: common/models.py:115 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:103 part/models.py:684 part/templates/part/detail.html:198 +#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "Verkäuflich" -#: common/models.py:104 +#: common/models.py:122 msgid "Parts are salable by default" msgstr "" -#: common/models.py:110 part/models.py:674 part/templates/part/detail.html:178 +#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "nachverfolgbar" -#: common/models.py:111 +#: common/models.py:129 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:117 +#: common/models.py:135 #, fuzzy #| msgid "Order Reference" msgid "Build Order Reference Prefix" msgstr "Bestellreferenz" -#: common/models.py:118 +#: common/models.py:136 #, fuzzy #| msgid "Order reference" msgid "Prefix value for build order reference" msgstr "Bestell-Referenz" -#: common/models.py:123 +#: common/models.py:141 #, fuzzy #| msgid "Order Reference" msgid "Build Order Reference Regex" msgstr "Bestellreferenz" -#: common/models.py:124 +#: common/models.py:142 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:128 +#: common/models.py:146 #, fuzzy #| msgid "Sales Order Reference" msgid "Sales Order Reference Prefix" msgstr "Bestellungsreferenz" -#: common/models.py:129 +#: common/models.py:147 #, fuzzy #| msgid "Order reference" msgid "Prefix value for sales order reference" msgstr "Bestell-Referenz" -#: common/models.py:133 +#: common/models.py:151 #, fuzzy #| msgid "Order reference" msgid "Purchase Order Reference Prefix" msgstr "Bestell-Referenz" -#: common/models.py:134 +#: common/models.py:152 #, fuzzy #| msgid "Order reference" msgid "Prefix value for purchase order reference" msgstr "Bestell-Referenz" -#: common/models.py:312 +#: common/models.py:357 msgid "Settings key (must be unique - case insensitive" msgstr "" "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird " "nicht beachtet)" -#: common/models.py:314 +#: common/models.py:359 msgid "Settings value" msgstr "Einstellungs-Wert" -#: common/models.py:366 +#: common/models.py:415 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:380 +#: common/models.py:429 msgid "Key string must be unique" msgstr "Schlüsseltext muss eindeutig sein" -#: common/models.py:419 -msgid "Currency Symbol e.g. $" -msgstr "Währungs-Symbol (z.B. €)" +#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 +msgid "Price" +msgstr "Preis" -#: common/models.py:421 -msgid "Currency Suffix e.g. AUD" -msgstr "Währungs-Suffix (z.B. EUR)" +#: common/models.py:475 +#, fuzzy +#| msgid "Enter a valid quantity" +msgid "Unit price at specified quantity" +msgstr "Bitte eine gültige Anzahl eingeben" -#: common/models.py:423 -msgid "Currency Description" -msgstr "Währungs-Beschreibung" - -#: common/models.py:425 -msgid "Currency Value" -msgstr "Währungs-Wert" - -#: common/models.py:427 -msgid "Use this currency as the base currency" -msgstr "Benutze diese Währung als Basis-Währung" - -#: common/models.py:510 +#: common/models.py:498 #, fuzzy #| msgid "Default Location" msgid "Default" @@ -1389,19 +1401,7 @@ msgstr "Standard-Lagerort" msgid "Current value" msgstr "Währungs-Wert" -#: common/views.py:23 -msgid "Create new Currency" -msgstr "Neues Währung hinzufügen" - -#: common/views.py:31 -msgid "Edit Currency" -msgstr "Währung bearbeiten" - -#: common/views.py:38 -msgid "Delete Currency" -msgstr "Währung entfernen" - -#: common/views.py:49 +#: common/views.py:25 #, fuzzy #| msgid "Settings" msgid "Change Setting" @@ -1476,7 +1476,7 @@ msgstr "Kaufen Sie Teile von dieser Firma?" msgid "Does this company manufacture parts?" msgstr "Produziert diese Firma Teile?" -#: company/models.py:283 stock/models.py:337 +#: company/models.py:283 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "Basisteil" @@ -1550,14 +1550,14 @@ msgstr "Hersteller" #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 -#: stock/templates/stock/item_base.html:286 templates/js/company.js:48 +#: stock/templates/stock/item_base.html:287 templates/js/company.js:48 #: templates/js/company.js:164 templates/js/order.js:154 msgid "Supplier" msgstr "Zulieferer" #: company/templates/company/detail.html:26 -#: order/templates/order/sales_order_base.html:81 stock/models.py:372 -#: stock/models.py:373 stock/templates/stock/item_base.html:204 +#: order/templates/order/sales_order_base.html:81 stock/models.py:373 +#: stock/models.py:374 stock/templates/stock/item_base.html:204 #: templates/js/company.js:40 templates/js/order.js:236 msgid "Customer" msgstr "Kunde" @@ -1609,21 +1609,21 @@ msgstr "Neues Teil" msgid "Create new Part" msgstr "Neues Teil hinzufügen" -#: company/templates/company/detail_part.html:69 company/views.py:53 +#: company/templates/company/detail_part.html:69 company/views.py:55 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "Neuer Zulieferer" -#: company/templates/company/detail_part.html:70 company/views.py:192 +#: company/templates/company/detail_part.html:70 company/views.py:194 msgid "Create new Supplier" msgstr "Neuen Zulieferer anlegen" -#: company/templates/company/detail_part.html:75 company/views.py:60 +#: company/templates/company/detail_part.html:75 company/views.py:62 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "Neuer Hersteller" -#: company/templates/company/detail_part.html:76 company/views.py:195 +#: company/templates/company/detail_part.html:76 company/views.py:197 msgid "Create new Manufacturer" msgstr "Neuen Hersteller anlegen" @@ -1658,7 +1658,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "Bestellungen" @@ -1678,7 +1678,7 @@ msgstr "Neue Bestellung" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "Bestellungen" @@ -1694,8 +1694,8 @@ msgid "New Sales Order" msgstr "Neuer Auftrag" #: company/templates/company/supplier_part_base.html:6 -#: company/templates/company/supplier_part_base.html:19 stock/models.py:346 -#: stock/templates/stock/item_base.html:291 templates/js/company.js:180 +#: company/templates/company/supplier_part_base.html:19 stock/models.py:347 +#: stock/templates/stock/item_base.html:292 templates/js/company.js:180 msgid "Supplier Part" msgstr "Zulieferer-Teil" @@ -1751,32 +1751,27 @@ msgstr "Teil bestellen" msgid "Pricing Information" msgstr "Preisinformationen ansehen" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2360 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 +#: part/templates/part/sale_prices.html:14 part/views.py:2350 msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" #: company/templates/company/supplier_part_pricing.html:36 -#: part/templates/part/sale_prices.html:41 +#: part/templates/part/sale_prices.html:43 #, fuzzy #| msgid "No company information found" msgid "No price break information found" msgstr "Keine Firmeninformation gefunden" -#: company/templates/company/supplier_part_pricing.html:80 -#: part/templates/part/sale_prices.html:85 templates/js/bom.js:234 -msgid "Price" -msgstr "Preis" - -#: company/templates/company/supplier_part_pricing.html:94 -#: part/templates/part/sale_prices.html:99 +#: company/templates/company/supplier_part_pricing.html:87 +#: part/templates/part/sale_prices.html:94 #, fuzzy #| msgid "Edit Price Break" msgid "Edit price break" msgstr "Preisstaffel bearbeiten" -#: company/templates/company/supplier_part_pricing.html:95 -#: part/templates/part/sale_prices.html:100 +#: company/templates/company/supplier_part_pricing.html:88 +#: part/templates/part/sale_prices.html:95 #, fuzzy #| msgid "Delete Price Break" msgid "Delete price break" @@ -1793,7 +1788,7 @@ msgstr "Bepreisung" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1807,95 +1802,95 @@ msgstr "Bestellungen" #: order/templates/order/receive_parts.html:14 part/models.py:295 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "Teile" -#: company/views.py:52 part/templates/part/tabs.html:42 +#: company/views.py:54 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "Zulieferer" -#: company/views.py:59 templates/navbar.html:32 +#: company/views.py:61 templates/navbar.html:32 msgid "Manufacturers" msgstr "Hersteller" -#: company/views.py:66 templates/navbar.html:41 +#: company/views.py:68 templates/navbar.html:41 msgid "Customers" msgstr "Kunden" -#: company/views.py:67 +#: company/views.py:69 msgid "New Customer" msgstr "Neuer Kunde" -#: company/views.py:75 +#: company/views.py:77 msgid "Companies" msgstr "Firmen" -#: company/views.py:76 +#: company/views.py:78 msgid "New Company" msgstr "Neue Firma" -#: company/views.py:154 +#: company/views.py:156 msgid "Update Company Image" msgstr "Firmenbild aktualisieren" -#: company/views.py:160 +#: company/views.py:162 msgid "Updated company image" msgstr "Aktualisiertes Firmenbild" -#: company/views.py:170 +#: company/views.py:172 msgid "Edit Company" msgstr "Firma bearbeiten" -#: company/views.py:175 +#: company/views.py:177 msgid "Edited company information" msgstr "Firmeninformation bearbeitet" -#: company/views.py:198 +#: company/views.py:200 msgid "Create new Customer" msgstr "Neuen Kunden anlegen" -#: company/views.py:200 +#: company/views.py:202 msgid "Create new Company" msgstr "Neue Firma anlegen" -#: company/views.py:227 +#: company/views.py:229 msgid "Created new company" msgstr "Neue Firma angelegt" -#: company/views.py:237 +#: company/views.py:239 msgid "Delete Company" msgstr "Firma löschen" -#: company/views.py:243 +#: company/views.py:245 msgid "Company was deleted" msgstr "Firma gelöscht" -#: company/views.py:268 +#: company/views.py:270 msgid "Edit Supplier Part" msgstr "Zuliefererteil bearbeiten" -#: company/views.py:278 templates/js/stock.js:846 +#: company/views.py:280 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "Neues Zuliefererteil anlegen" -#: company/views.py:339 +#: company/views.py:341 msgid "Delete Supplier Part" msgstr "Zuliefererteil entfernen" -#: company/views.py:416 part/views.py:2366 +#: company/views.py:418 part/views.py:2356 #, fuzzy #| msgid "Add Price Break" msgid "Added new price break" msgstr "Preisstaffel hinzufügen" -#: company/views.py:453 part/views.py:2411 +#: company/views.py:454 part/views.py:2400 msgid "Edit Price Break" msgstr "Preisstaffel bearbeiten" -#: company/views.py:469 part/views.py:2427 +#: company/views.py:470 part/views.py:2416 msgid "Delete Price Break" msgstr "Preisstaffel löschen" @@ -2000,8 +1995,8 @@ msgstr "" msgid "Date order was completed" msgstr "Bestellung als vollständig markieren" -#: order/models.py:185 order/models.py:267 part/views.py:1477 -#: stock/models.py:243 stock/models.py:816 +#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" @@ -2039,7 +2034,7 @@ msgstr "Position - Notizen" #: order/models.py:484 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 -#: stock/templates/stock/item_base.html:265 templates/js/order.js:139 +#: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "Kaufvertrag" @@ -2067,11 +2062,11 @@ msgstr "zugewiesene Anzahl darf nicht die verfügbare Anzahl überschreiten" msgid "Quantity must be 1 for serialized stock item" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: order/models.py:626 +#: order/models.py:625 msgid "Select stock item to allocate" msgstr "Lagerobjekt für Zuordnung auswählen" -#: order/models.py:629 +#: order/models.py:628 msgid "Enter stock allocation quantity" msgstr "Zuordnungsanzahl eingeben" @@ -2293,7 +2288,7 @@ msgid "Sales Order Items" msgstr "Auftragspositionen" #: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:154 stock/models.py:377 +#: order/templates/order/sales_order_detail.html:154 stock/models.py:378 #: stock/templates/stock/item_base.html:191 templates/js/build.js:402 msgid "Serial Number" msgstr "Seriennummer" @@ -2542,103 +2537,103 @@ msgstr "Fehler beim Lesen der Stückliste (ungültige Daten)" msgid "Error reading BOM file (incorrect row size)" msgstr "Fehler beim Lesen der Stückliste (ungültige Zeilengröße)" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "File Format" msgstr "Dateiformat" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "Select output file format" msgstr "Ausgabe-Dateiformat auswählen" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Cascading" msgstr "Kaskadierend" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Download cascading / multi-level BOM" msgstr "Kaskadierende Stückliste herunterladen" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Levels" msgstr "" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:68 +#: part/forms.py:66 #, fuzzy #| msgid "New Parameter" msgid "Include Parameter Data" msgstr "Neuer Parameter" -#: part/forms.py:68 +#: part/forms.py:66 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:70 +#: part/forms.py:68 #, fuzzy #| msgid "Include stock in sublocations" msgid "Include Stock Data" msgstr "Bestand in Unterlagerorten einschließen" -#: part/forms.py:70 +#: part/forms.py:68 #, fuzzy #| msgid "Include parts in subcategories" msgid "Include part stock data in exported BOM" msgstr "Teile in Unterkategorien einschließen" -#: part/forms.py:72 +#: part/forms.py:70 #, fuzzy #| msgid "New Supplier Part" msgid "Include Supplier Data" msgstr "Neues Zulieferer-Teil" -#: part/forms.py:72 +#: part/forms.py:70 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1632 +#: part/forms.py:91 part/models.py:1644 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/forms.py:94 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 #, fuzzy #| msgid "Select parent part" msgid "Select parent part to copy BOM from" msgstr "Ausgangsteil auswählen" -#: part/forms.py:100 +#: part/forms.py:98 #, fuzzy #| msgid "Select from existing images" msgid "Clear existing BOM items" msgstr "Aus vorhandenen Bildern auswählen" -#: part/forms.py:105 +#: part/forms.py:103 #, fuzzy #| msgid "Confim BOM item deletion" msgid "Confirm BOM duplication" msgstr "Löschung von BOM-Position bestätigen" -#: part/forms.py:123 +#: part/forms.py:121 msgid "Confirm that the BOM is correct" msgstr "Bestätigen, dass die Stückliste korrekt ist" -#: part/forms.py:135 +#: part/forms.py:133 msgid "Select BOM file to upload" msgstr "Stücklisten-Datei zum Upload auswählen" -#: part/forms.py:154 +#: part/forms.py:152 #, fuzzy #| msgid "Delete Parts" msgid "Related Part" msgstr "Teile löschen" -#: part/forms.py:173 +#: part/forms.py:171 msgid "Select part category" msgstr "Teilekategorie wählen" -#: part/forms.py:189 +#: part/forms.py:187 #, fuzzy #| msgid "Perform 'deep copy' which will duplicate all BOM data for this part" msgid "Duplicate all BOM data for this part" @@ -2646,32 +2641,28 @@ msgstr "" "Tiefe Kopie ausführen. Dies wird alle Daten der Stückliste für dieses Teil " "duplizieren" -#: part/forms.py:190 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:195 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:196 +#: part/forms.py:194 #, fuzzy #| msgid "Parameters" msgid "Copy Parameters" msgstr "Parameter" -#: part/forms.py:201 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "Erstellen des Teils bestätigen" -#: part/forms.py:298 +#: part/forms.py:296 msgid "Input quantity for price calculation" msgstr "Eintragsmenge zur Preisberechnung" -#: part/forms.py:301 -msgid "Select currency for price calculation" -msgstr "Währung zur Preisberechnung wählen" - #: part/models.py:67 msgid "Default location for parts in this category" msgstr "Standard-Standort für Teile dieser Kategorie" @@ -2710,117 +2701,121 @@ msgstr "" msgid "Most recent serial number is" msgstr "Keine Seriennummer angegeben" -#: part/models.py:540 +#: part/models.py:541 +msgid "Duplicate IPN not allowed in part settings" +msgstr "" + +#: part/models.py:552 msgid "Part must be unique for name, IPN and revision" msgstr "Namen, Teile- und Revisionsnummern müssen eindeutig sein" -#: part/models.py:569 part/templates/part/detail.html:19 +#: part/models.py:581 part/templates/part/detail.html:19 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:573 +#: part/models.py:585 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:582 +#: part/models.py:594 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:584 +#: part/models.py:596 msgid "Part description" msgstr "Beschreibung des Teils" -#: part/models.py:586 +#: part/models.py:598 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:591 +#: part/models.py:603 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:593 +#: part/models.py:605 msgid "Internal Part Number" msgstr "Interne Teilenummer" -#: part/models.py:595 +#: part/models.py:607 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:609 +#: part/models.py:621 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:653 +#: part/models.py:665 msgid "Default supplier part" msgstr "Standard-Zulieferer?" -#: part/models.py:656 +#: part/models.py:668 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Lagerbestand" -#: part/models.py:658 +#: part/models.py:670 msgid "Stock keeping units for this part" msgstr "Stock Keeping Units (SKU) für dieses Teil" -#: part/models.py:662 part/templates/part/detail.html:158 +#: part/models.py:674 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "Baugruppe" -#: part/models.py:663 +#: part/models.py:675 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:669 +#: part/models.py:681 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bau von anderen genutzt werden?" -#: part/models.py:675 +#: part/models.py:687 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:680 +#: part/models.py:692 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:685 +#: part/models.py:697 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:689 part/templates/part/detail.html:215 +#: part/models.py:701 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "Aktiv" -#: part/models.py:690 +#: part/models.py:702 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:694 part/templates/part/detail.html:138 +#: part/models.py:706 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "Virtuell" -#: part/models.py:695 +#: part/models.py:707 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ist dieses Teil virtuell, wie zum Beispiel eine Software oder Lizenz?" -#: part/models.py:697 +#: part/models.py:709 msgid "Part notes - supports Markdown formatting" msgstr "Bemerkungen - unterstüzt Markdown-Formatierung" -#: part/models.py:699 +#: part/models.py:711 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1505 +#: part/models.py:1517 #, fuzzy #| msgid "Stock item cannot be created for a template Part" msgid "Test templates can only be created for trackable parts" msgstr "Lagerobjekt kann nicht für Vorlagen-Teile angelegt werden" -#: part/models.py:1522 +#: part/models.py:1534 #, fuzzy #| msgid "" #| "A stock item with this serial number already exists for template part " @@ -2830,133 +2825,133 @@ msgstr "" "Ein Teil mit dieser Seriennummer existiert bereits für die Teilevorlage " "{part}" -#: part/models.py:1541 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 #, fuzzy #| msgid "Instance Name" msgid "Test Name" msgstr "Instanzname" -#: part/models.py:1542 +#: part/models.py:1554 #, fuzzy #| msgid "Serial number for this item" msgid "Enter a name for the test" msgstr "Seriennummer für dieses Teil" -#: part/models.py:1547 +#: part/models.py:1559 #, fuzzy #| msgid "Description" msgid "Test Description" msgstr "Beschreibung" -#: part/models.py:1548 +#: part/models.py:1560 #, fuzzy #| msgid "Brief description of the build" msgid "Enter description for this test" msgstr "Kurze Beschreibung des Baus" -#: part/models.py:1553 templates/js/part.js:576 +#: part/models.py:1565 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "benötigt" -#: part/models.py:1554 +#: part/models.py:1566 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1559 templates/js/part.js:584 +#: part/models.py:1571 templates/js/part.js:584 #, fuzzy #| msgid "Required Parts" msgid "Requires Value" msgstr "benötigte Teile" -#: part/models.py:1560 +#: part/models.py:1572 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1565 templates/js/part.js:591 +#: part/models.py:1577 templates/js/part.js:591 #, fuzzy #| msgid "Delete Attachment" msgid "Requires Attachment" msgstr "Anhang löschen" -#: part/models.py:1566 +#: part/models.py:1578 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1599 +#: part/models.py:1611 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:1604 +#: part/models.py:1616 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:1606 +#: part/models.py:1618 msgid "Parameter Units" msgstr "Parameter Einheit" -#: part/models.py:1634 +#: part/models.py:1646 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:1636 +#: part/models.py:1648 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:1673 +#: part/models.py:1685 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:1681 +#: part/models.py:1693 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:1687 +#: part/models.py:1699 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:1689 +#: part/models.py:1701 #, fuzzy #| msgid "Confim BOM item deletion" msgid "This BOM item is optional" msgstr "Löschung von BOM-Position bestätigen" -#: part/models.py:1692 +#: part/models.py:1704 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:1695 +#: part/models.py:1707 msgid "BOM item reference" msgstr "Referenz des Objekts auf der Stückliste" -#: part/models.py:1698 +#: part/models.py:1710 msgid "BOM item notes" msgstr "Notizen zum Stücklisten-Objekt" -#: part/models.py:1700 +#: part/models.py:1712 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1767 part/views.py:1483 part/views.py:1535 -#: stock/models.py:233 +#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: stock/models.py:234 #, fuzzy #| msgid "Overage must be an integer value or a percentage" msgid "Quantity must be integer value for trackable parts" msgstr "Überschuss muss eine Ganzzahl oder ein Prozentwert sein" -#: part/models.py:1783 +#: part/models.py:1795 #, fuzzy #| msgid "New BOM Item" msgid "BOM Item" msgstr "Neue Stücklistenposition" -#: part/models.py:1898 +#: part/models.py:1910 #, fuzzy #| msgid "Select a part" msgid "Select Related Part" msgstr "Teil auswählen" -#: part/models.py:1930 +#: part/models.py:1942 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -2977,7 +2972,7 @@ msgstr "Bestellung" #: part/templates/part/allocation.html:45 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:72 -#: stock/templates/stock/item_base.html:273 +#: stock/templates/stock/item_base.html:274 #: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:724 #: templates/js/stock.js:695 templates/js/stock.js:944 msgid "Stock Item" @@ -3052,7 +3047,7 @@ msgstr "Stückliste validieren" msgid "Validate" msgstr "BOM validieren" -#: part/templates/part/bom.html:62 part/views.py:1774 +#: part/templates/part/bom.html:62 part/views.py:1776 msgid "Export Bill of Materials" msgstr "Stückliste exportieren" @@ -3174,7 +3169,7 @@ msgstr "Neuen Bau beginnen" msgid "All parts" msgstr "Alle Teile" -#: part/templates/part/category.html:24 part/views.py:2177 +#: part/templates/part/category.html:24 part/views.py:2167 msgid "Create new part category" msgstr "Teilkategorie anlegen" @@ -3356,7 +3351,7 @@ msgstr "Teil ist virtuell (kein physisches Teil)" msgid "Part is not a virtual part" msgstr "Teil ist nicht virtuell" -#: part/templates/part/detail.html:148 stock/forms.py:248 +#: part/templates/part/detail.html:148 stock/forms.py:249 #: templates/js/table_filters.js:23 templates/js/table_filters.js:248 msgid "Template" msgstr "Vorlage" @@ -3433,17 +3428,17 @@ msgstr "Teilparameter" msgid "Add new parameter" msgstr "Parameter hinzufügen" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:35 +#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 msgid "New Parameter" msgstr "Neuer Parameter" -#: part/templates/part/params.html:25 stock/models.py:1415 +#: part/templates/part/params.html:25 stock/models.py:1419 #: templates/js/stock.js:112 msgid "Value" msgstr "Wert" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:147 +#: part/templates/part/supplier.html:19 users/models.py:148 msgid "Delete" msgstr "Löschen" @@ -3657,7 +3652,7 @@ msgstr "Stückliste" msgid "Used In" msgstr "Benutzt in" -#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:317 +#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:318 msgid "Tests" msgstr "" @@ -3693,230 +3688,230 @@ msgstr "Neues Teil hinzufügen" msgid "New Variant" msgstr "Varianten" -#: part/views.py:80 +#: part/views.py:82 #, fuzzy #| msgid "Allocated Parts" msgid "Add Related Part" msgstr "Zugeordnete Teile" -#: part/views.py:136 +#: part/views.py:138 #, fuzzy #| msgid "Delete Supplier Part" msgid "Delete Related Part" msgstr "Zuliefererteil entfernen" -#: part/views.py:148 +#: part/views.py:150 msgid "Add part attachment" msgstr "Teilanhang hinzufügen" -#: part/views.py:203 templates/attachment_table.html:34 +#: part/views.py:205 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "Anhang bearbeiten" -#: part/views.py:209 +#: part/views.py:211 msgid "Part attachment updated" msgstr "Teilanhang aktualisiert" -#: part/views.py:224 +#: part/views.py:226 msgid "Delete Part Attachment" msgstr "Teilanhang löschen" -#: part/views.py:232 +#: part/views.py:234 msgid "Deleted part attachment" msgstr "Teilanhang gelöscht" -#: part/views.py:241 +#: part/views.py:243 #, fuzzy #| msgid "Create Part Parameter Template" msgid "Create Test Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:270 +#: part/views.py:272 #, fuzzy #| msgid "Edit Template" msgid "Edit Test Template" msgstr "Vorlage bearbeiten" -#: part/views.py:286 +#: part/views.py:288 #, fuzzy #| msgid "Delete Template" msgid "Delete Test Template" msgstr "Vorlage löschen" -#: part/views.py:295 +#: part/views.py:297 msgid "Set Part Category" msgstr "Teilkategorie auswählen" -#: part/views.py:345 +#: part/views.py:347 #, python-brace-format msgid "Set category for {n} parts" msgstr "Kategorie für {n} Teile setzen" -#: part/views.py:380 +#: part/views.py:382 msgid "Create Variant" msgstr "Variante anlegen" -#: part/views.py:462 +#: part/views.py:464 msgid "Duplicate Part" msgstr "Teil duplizieren" -#: part/views.py:469 +#: part/views.py:471 msgid "Copied part" msgstr "Teil kopiert" -#: part/views.py:523 part/views.py:653 +#: part/views.py:525 part/views.py:655 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:588 templates/js/stock.js:840 +#: part/views.py:590 templates/js/stock.js:840 msgid "Create New Part" msgstr "Neues Teil anlegen" -#: part/views.py:595 +#: part/views.py:597 msgid "Created new part" msgstr "Neues Teil angelegt" -#: part/views.py:811 +#: part/views.py:813 msgid "Part QR Code" msgstr "Teil-QR-Code" -#: part/views.py:830 +#: part/views.py:832 msgid "Upload Part Image" msgstr "Teilbild hochladen" -#: part/views.py:838 part/views.py:875 +#: part/views.py:840 part/views.py:877 msgid "Updated part image" msgstr "Teilbild aktualisiert" -#: part/views.py:847 +#: part/views.py:849 msgid "Select Part Image" msgstr "Teilbild auswählen" -#: part/views.py:878 +#: part/views.py:880 msgid "Part image not found" msgstr "Teilbild nicht gefunden" -#: part/views.py:889 +#: part/views.py:891 msgid "Edit Part Properties" msgstr "Teileigenschaften bearbeiten" -#: part/views.py:916 +#: part/views.py:918 #, fuzzy #| msgid "Duplicate Part" msgid "Duplicate BOM" msgstr "Teil duplizieren" -#: part/views.py:947 +#: part/views.py:949 #, fuzzy #| msgid "Confirm unallocation of build stock" msgid "Confirm duplication of BOM from parent" msgstr "Zuweisungsaufhebung bestätigen" -#: part/views.py:968 +#: part/views.py:970 msgid "Validate BOM" msgstr "BOM validieren" -#: part/views.py:991 +#: part/views.py:993 #, fuzzy #| msgid "Confirm that the BOM is correct" msgid "Confirm that the BOM is valid" msgstr "Bestätigen, dass die Stückliste korrekt ist" -#: part/views.py:1002 +#: part/views.py:1004 #, fuzzy #| msgid "Validate Bill of Materials" msgid "Validated Bill of Materials" msgstr "Stückliste validieren" -#: part/views.py:1136 +#: part/views.py:1138 msgid "No BOM file provided" msgstr "Keine Stückliste angegeben" -#: part/views.py:1486 +#: part/views.py:1488 msgid "Enter a valid quantity" msgstr "Bitte eine gültige Anzahl eingeben" -#: part/views.py:1511 part/views.py:1514 +#: part/views.py:1513 part/views.py:1516 msgid "Select valid part" msgstr "Bitte ein gültiges Teil auswählen" -#: part/views.py:1520 +#: part/views.py:1522 msgid "Duplicate part selected" msgstr "Teil doppelt ausgewählt" -#: part/views.py:1558 +#: part/views.py:1560 msgid "Select a part" msgstr "Teil auswählen" -#: part/views.py:1564 +#: part/views.py:1566 #, fuzzy #| msgid "Select part to be used in BOM" msgid "Selected part creates a circular BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/views.py:1568 +#: part/views.py:1570 msgid "Specify quantity" msgstr "Anzahl angeben" -#: part/views.py:1824 +#: part/views.py:1826 msgid "Confirm Part Deletion" msgstr "Löschen des Teils bestätigen" -#: part/views.py:1833 +#: part/views.py:1835 msgid "Part was deleted" msgstr "Teil wurde gelöscht" -#: part/views.py:1842 +#: part/views.py:1844 msgid "Part Pricing" msgstr "Teilbepreisung" -#: part/views.py:1968 +#: part/views.py:1958 msgid "Create Part Parameter Template" msgstr "Teilparametervorlage anlegen" -#: part/views.py:1978 +#: part/views.py:1968 msgid "Edit Part Parameter Template" msgstr "Teilparametervorlage bearbeiten" -#: part/views.py:1987 +#: part/views.py:1977 msgid "Delete Part Parameter Template" msgstr "Teilparametervorlage löschen" -#: part/views.py:1997 +#: part/views.py:1987 msgid "Create Part Parameter" msgstr "Teilparameter anlegen" -#: part/views.py:2049 +#: part/views.py:2039 msgid "Edit Part Parameter" msgstr "Teilparameter bearbeiten" -#: part/views.py:2065 +#: part/views.py:2055 msgid "Delete Part Parameter" msgstr "Teilparameter löschen" -#: part/views.py:2124 +#: part/views.py:2114 msgid "Edit Part Category" msgstr "Teilkategorie bearbeiten" -#: part/views.py:2161 +#: part/views.py:2151 msgid "Delete Part Category" msgstr "Teilkategorie löschen" -#: part/views.py:2169 +#: part/views.py:2159 msgid "Part category was deleted" msgstr "Teilekategorie wurde gelöscht" -#: part/views.py:2232 +#: part/views.py:2222 #, fuzzy #| msgid "Create BOM item" msgid "Create BOM Item" msgstr "BOM-Position anlegen" -#: part/views.py:2300 +#: part/views.py:2290 msgid "Edit BOM item" msgstr "BOM-Position beaarbeiten" -#: part/views.py:2350 +#: part/views.py:2340 msgid "Confim BOM item deletion" msgstr "Löschung von BOM-Position bestätigen" @@ -3960,342 +3955,348 @@ msgstr "Einstellungs-Beschreibung" msgid "Enter unique serial numbers (or leave blank)" msgstr "Eindeutige Seriennummern eingeben (oder leer lassen)" -#: stock/forms.py:191 +#: stock/forms.py:192 msgid "Label" msgstr "" -#: stock/forms.py:192 stock/forms.py:248 +#: stock/forms.py:193 stock/forms.py:249 #, fuzzy #| msgid "Select stock item to allocate" msgid "Select test report template" msgstr "Lagerobjekt für Zuordnung auswählen" -#: stock/forms.py:256 +#: stock/forms.py:257 msgid "Include stock items in sub locations" msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" -#: stock/forms.py:291 +#: stock/forms.py:292 #, fuzzy #| msgid "No stock items matching query" msgid "Stock item to install" msgstr "Keine zur Anfrage passenden Lagerobjekte" -#: stock/forms.py:298 +#: stock/forms.py:299 #, fuzzy #| msgid "Stock Quantity" msgid "Stock quantity to assign" msgstr "Bestand" -#: stock/forms.py:326 +#: stock/forms.py:327 #, fuzzy #| msgid "Quantity must not exceed available stock quantity ({n})" msgid "Must not exceed available quantity" msgstr "Anzahl darf nicht die verfügbare Anzahl überschreiten ({n})" -#: stock/forms.py:336 +#: stock/forms.py:337 #, fuzzy #| msgid "Does this part have tracking for unique items?" msgid "Destination location for uninstalled items" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: stock/forms.py:338 +#: stock/forms.py:339 #, fuzzy #| msgid "Description of the company" msgid "Add transaction note (optional)" msgstr "Firmenbeschreibung" -#: stock/forms.py:340 +#: stock/forms.py:341 #, fuzzy #| msgid "Confirm stock allocation" msgid "Confirm uninstall" msgstr "Lagerbestandszuordnung bestätigen" -#: stock/forms.py:340 +#: stock/forms.py:341 #, fuzzy #| msgid "Confirm movement of stock items" msgid "Confirm removal of installed stock items" msgstr "Bewegung der Lagerobjekte bestätigen" -#: stock/forms.py:364 +#: stock/forms.py:365 msgid "Destination stock location" msgstr "Ziel-Lagerbestand" -#: stock/forms.py:366 +#: stock/forms.py:367 msgid "Add note (required)" msgstr "" -#: stock/forms.py:370 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 msgid "Confirm stock adjustment" msgstr "Bestands-Anpassung bestätigen" -#: stock/forms.py:370 +#: stock/forms.py:371 msgid "Confirm movement of stock items" msgstr "Bewegung der Lagerobjekte bestätigen" -#: stock/forms.py:372 +#: stock/forms.py:373 #, fuzzy #| msgid "Default Location" msgid "Set Default Location" msgstr "Standard-Lagerort" -#: stock/forms.py:372 +#: stock/forms.py:373 msgid "Set the destination as the default location for selected parts" msgstr "Setze das Ziel als Standard-Ziel für ausgewählte Teile" -#: stock/models.py:178 +#: stock/models.py:179 #, fuzzy #| msgid "Created new stock item" msgid "Created stock item" msgstr "Neues Lagerobjekt erstellt" -#: stock/models.py:214 +#: stock/models.py:215 #, fuzzy #| msgid "A stock item with this serial number already exists" msgid "StockItem with this serial number already exists" msgstr "Ein Teil mit dieser Seriennummer existiert bereits" -#: stock/models.py:250 +#: stock/models.py:251 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "Teile-Typ ('{pf}') muss {pe} sein" -#: stock/models.py:260 stock/models.py:269 +#: stock/models.py:261 stock/models.py:270 msgid "Quantity must be 1 for item with a serial number" msgstr "Anzahl muss für Objekte mit Seriennummer \"1\" sein" -#: stock/models.py:261 +#: stock/models.py:262 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als \"1\" ist" -#: stock/models.py:283 +#: stock/models.py:284 msgid "Item cannot belong to itself" msgstr "Teil kann nicht zu sich selbst gehören" -#: stock/models.py:289 +#: stock/models.py:290 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:296 +#: stock/models.py:297 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:329 +#: stock/models.py:330 msgid "Parent Stock Item" msgstr "Eltern-Lagerobjekt" -#: stock/models.py:338 +#: stock/models.py:339 msgid "Base part" msgstr "Basis-Teil" -#: stock/models.py:347 +#: stock/models.py:348 msgid "Select a matching supplier part for this stock item" msgstr "Passenden Zulieferer für dieses Lagerobjekt auswählen" -#: stock/models.py:352 stock/templates/stock/stock_app_base.html:7 +#: stock/models.py:353 stock/templates/stock/stock_app_base.html:7 msgid "Stock Location" msgstr "Lagerort" -#: stock/models.py:355 +#: stock/models.py:356 msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:360 stock/templates/stock/item_base.html:212 +#: stock/models.py:361 stock/templates/stock/item_base.html:212 msgid "Installed In" msgstr "Installiert in" -#: stock/models.py:363 +#: stock/models.py:364 msgid "Is this item installed in another item?" msgstr "Ist dieses Teil in einem anderen verbaut?" -#: stock/models.py:379 +#: stock/models.py:380 msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:391 +#: stock/models.py:392 msgid "Batch code for this stock item" msgstr "Losnummer für dieses Lagerobjekt" -#: stock/models.py:395 +#: stock/models.py:396 msgid "Stock Quantity" msgstr "Bestand" -#: stock/models.py:404 +#: stock/models.py:405 msgid "Source Build" msgstr "Quellbau" -#: stock/models.py:406 +#: stock/models.py:407 msgid "Build for this stock item" msgstr "Bau für dieses Lagerobjekt" -#: stock/models.py:417 +#: stock/models.py:418 msgid "Source Purchase Order" msgstr "Quellbestellung" -#: stock/models.py:420 +#: stock/models.py:421 msgid "Purchase order for this stock item" msgstr "Bestellung für dieses Teil" -#: stock/models.py:426 +#: stock/models.py:427 msgid "Destination Sales Order" msgstr "Zielauftrag" -#: stock/models.py:433 -msgid "Destination Build Order" -msgstr "Zielbauauftrag" - -#: stock/models.py:446 +#: stock/models.py:439 msgid "Delete this Stock Item when stock is depleted" msgstr "Objekt löschen wenn Lagerbestand aufgebraucht" -#: stock/models.py:456 stock/templates/stock/item_notes.html:14 +#: stock/models.py:449 stock/templates/stock/item_notes.html:14 #: stock/templates/stock/item_notes.html:30 msgid "Stock Item Notes" msgstr "Lagerobjekt-Notizen" -#: stock/models.py:507 +#: stock/models.py:457 stock/templates/stock/item_base.html:266 +#, fuzzy +#| msgid "Purchase Order" +msgid "Purchase Price" +msgstr "Kaufvertrag" + +#: stock/models.py:458 +msgid "Single unit purchase price at time of purchase" +msgstr "" + +#: stock/models.py:509 #, fuzzy #| msgid "Item assigned to customer?" msgid "Assigned to Customer" msgstr "Ist dieses Objekt einem Kunden zugeteilt?" -#: stock/models.py:509 +#: stock/models.py:511 #, fuzzy #| msgid "Item assigned to customer?" msgid "Manually assigned to customer" msgstr "Ist dieses Objekt einem Kunden zugeteilt?" -#: stock/models.py:522 +#: stock/models.py:524 #, fuzzy #| msgid "Item assigned to customer?" msgid "Returned from customer" msgstr "Ist dieses Objekt einem Kunden zugeteilt?" -#: stock/models.py:524 +#: stock/models.py:526 #, fuzzy #| msgid "Create new stock location" msgid "Returned to location" msgstr "Neuen Lagerort anlegen" -#: stock/models.py:652 +#: stock/models.py:651 #, fuzzy #| msgid "Installed in Stock Item" msgid "Installed into stock item" msgstr "In Lagerobjekt installiert" -#: stock/models.py:660 +#: stock/models.py:659 #, fuzzy #| msgid "Installed in Stock Item" msgid "Installed stock item" msgstr "In Lagerobjekt installiert" -#: stock/models.py:684 +#: stock/models.py:683 #, fuzzy #| msgid "Installed in Stock Item" msgid "Uninstalled stock item" msgstr "In Lagerobjekt installiert" -#: stock/models.py:703 +#: stock/models.py:702 #, fuzzy #| msgid "Include sublocations" msgid "Uninstalled into location" msgstr "Unterlagerorte einschließen" -#: stock/models.py:807 +#: stock/models.py:802 #, fuzzy #| msgid "Part is not a virtual part" msgid "Part is not set as trackable" msgstr "Teil ist nicht virtuell" -#: stock/models.py:813 +#: stock/models.py:808 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:819 +#: stock/models.py:814 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "Anzahl darf nicht die verfügbare Anzahl überschreiten ({n})" -#: stock/models.py:822 +#: stock/models.py:817 msgid "Serial numbers must be a list of integers" msgstr "Seriennummern muss eine Liste von Ganzzahlen sein" -#: stock/models.py:825 +#: stock/models.py:820 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:857 +#: stock/models.py:852 msgid "Add serial number" msgstr "Seriennummer hinzufügen" -#: stock/models.py:860 +#: stock/models.py:855 #, python-brace-format msgid "Serialized {n} items" msgstr "{n} Teile serialisiert" -#: stock/models.py:971 +#: stock/models.py:966 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerobjekt kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:1316 +#: stock/models.py:1320 msgid "Tracking entry title" msgstr "Name des Eintrags-Trackings" -#: stock/models.py:1318 +#: stock/models.py:1322 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:1320 +#: stock/models.py:1324 msgid "Link to external page for further information" msgstr "Link auf externe Seite für weitere Informationen" -#: stock/models.py:1380 +#: stock/models.py:1384 #, fuzzy #| msgid "Serial number for this item" msgid "Value must be provided for this test" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:1386 +#: stock/models.py:1390 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1403 +#: stock/models.py:1407 msgid "Test" msgstr "" -#: stock/models.py:1404 +#: stock/models.py:1408 #, fuzzy #| msgid "Part name" msgid "Test name" msgstr "Name des Teils" -#: stock/models.py:1409 +#: stock/models.py:1413 #, fuzzy #| msgid "Search Results" msgid "Result" msgstr "Suchergebnisse" -#: stock/models.py:1410 templates/js/table_filters.js:162 +#: stock/models.py:1414 templates/js/table_filters.js:162 msgid "Test result" msgstr "" -#: stock/models.py:1416 +#: stock/models.py:1420 msgid "Test output value" msgstr "" -#: stock/models.py:1422 +#: stock/models.py:1426 #, fuzzy #| msgid "Attachments" msgid "Attachment" msgstr "Anhänge" -#: stock/models.py:1423 +#: stock/models.py:1427 #, fuzzy #| msgid "Delete attachment" msgid "Test result attachment" msgstr "Anhang löschen" -#: stock/models.py:1429 +#: stock/models.py:1433 #, fuzzy #| msgid "Edit notes" msgid "Test notes" @@ -4461,36 +4462,36 @@ msgstr "" msgid "Stock Item Details" msgstr "Lagerbestands-Details" -#: stock/templates/stock/item_base.html:237 templates/js/build.js:426 +#: stock/templates/stock/item_base.html:231 templates/js/build.js:426 #, fuzzy #| msgid "No stock location set" msgid "No location set" msgstr "Kein Lagerort gesetzt" -#: stock/templates/stock/item_base.html:244 +#: stock/templates/stock/item_base.html:238 #, fuzzy #| msgid "Unique Identifier" msgid "Barcode Identifier" msgstr "Eindeutiger Bezeichner" -#: stock/templates/stock/item_base.html:258 templates/js/build.js:626 +#: stock/templates/stock/item_base.html:252 templates/js/build.js:626 #: templates/navbar.html:25 msgid "Build" msgstr "Bau" -#: stock/templates/stock/item_base.html:272 +#: stock/templates/stock/item_base.html:273 msgid "Parent Item" msgstr "Elternposition" -#: stock/templates/stock/item_base.html:297 +#: stock/templates/stock/item_base.html:298 msgid "Last Updated" msgstr "Zuletzt aktualisiert" -#: stock/templates/stock/item_base.html:302 +#: stock/templates/stock/item_base.html:303 msgid "Last Stocktake" msgstr "Letzte Inventur" -#: stock/templates/stock/item_base.html:306 +#: stock/templates/stock/item_base.html:307 msgid "No stocktake performed" msgstr "Keine Inventur ausgeführt" @@ -5019,24 +5020,6 @@ msgstr "Suche" msgid "Build Order Settings" msgstr "Bauaufträge" -#: templates/InvenTree/settings/currency.html:5 -#, fuzzy -#| msgid "Settings" -msgid "General Settings" -msgstr "Einstellungen" - -#: templates/InvenTree/settings/currency.html:14 -#, fuzzy -#| msgid "Currency Value" -msgid "Currencies" -msgstr "Währungs-Wert" - -#: templates/InvenTree/settings/currency.html:18 -#, fuzzy -#| msgid "Delete Currency" -msgid "New Currency" -msgstr "Währung entfernen" - #: templates/InvenTree/settings/global.html:10 #, fuzzy #| msgid "InvenTree Version" @@ -5055,21 +5038,21 @@ msgstr "Einstellungen" msgid "Part Options" msgstr "Quell-Standort" -#: templates/InvenTree/settings/part.html:31 +#: templates/InvenTree/settings/part.html:33 #, fuzzy #| msgid "Edit Part Parameter Template" msgid "Part Parameter Templates" msgstr "Teilparametervorlage bearbeiten" -#: templates/InvenTree/settings/part.html:52 +#: templates/InvenTree/settings/part.html:54 msgid "No part parameter templates found" msgstr "Keine Teilparametervorlagen gefunden" -#: templates/InvenTree/settings/part.html:72 +#: templates/InvenTree/settings/part.html:74 msgid "Edit Template" msgstr "Vorlage bearbeiten" -#: templates/InvenTree/settings/part.html:73 +#: templates/InvenTree/settings/part.html:75 msgid "Delete Template" msgstr "Vorlage löschen" @@ -5131,12 +5114,6 @@ msgstr "InvenTree-Version" msgid "Global" msgstr "" -#: templates/InvenTree/settings/tabs.html:19 -#, fuzzy -#| msgid "Edit Currency" -msgid "Currency" -msgstr "Währung bearbeiten" - #: templates/InvenTree/settings/theme.html:10 #, fuzzy #| msgid "Settings" @@ -6032,46 +6009,93 @@ msgstr "Revision" msgid "Important dates" msgstr "Stückliste importieren" -#: users/models.py:130 +#: users/models.py:131 msgid "Permission set" msgstr "" -#: users/models.py:138 +#: users/models.py:139 msgid "Group" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "View" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "Permission to view items" msgstr "" -#: users/models.py:143 +#: users/models.py:144 #, fuzzy #| msgid "Address" msgid "Add" msgstr "Adresse" -#: users/models.py:143 +#: users/models.py:144 msgid "Permission to add items" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Change" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Permissions to edit items" msgstr "" -#: users/models.py:147 +#: users/models.py:148 #, fuzzy #| msgid "Remove selected BOM items" msgid "Permission to delete items" msgstr "Ausgewählte Stücklistenpositionen entfernen" +#~ msgid "Currency Symbol e.g. $" +#~ msgstr "Währungs-Symbol (z.B. €)" + +#~ msgid "Currency Suffix e.g. AUD" +#~ msgstr "Währungs-Suffix (z.B. EUR)" + +#~ msgid "Currency Description" +#~ msgstr "Währungs-Beschreibung" + +#~ msgid "Currency Value" +#~ msgstr "Währungs-Wert" + +#~ msgid "Use this currency as the base currency" +#~ msgstr "Benutze diese Währung als Basis-Währung" + +#~ msgid "Create new Currency" +#~ msgstr "Neues Währung hinzufügen" + +#~ msgid "Edit Currency" +#~ msgstr "Währung bearbeiten" + +#~ msgid "Select currency for price calculation" +#~ msgstr "Währung zur Preisberechnung wählen" + +#~ msgid "Destination Build Order" +#~ msgstr "Zielbauauftrag" + +#, fuzzy +#~| msgid "Settings" +#~ msgid "General Settings" +#~ msgstr "Einstellungen" + +#, fuzzy +#~| msgid "Currency Value" +#~ msgid "Currencies" +#~ msgstr "Währungs-Wert" + +#, fuzzy +#~| msgid "Delete Currency" +#~ msgid "New Currency" +#~ msgstr "Währung entfernen" + +#, fuzzy +#~| msgid "Edit Currency" +#~ msgid "Currency" +#~ msgstr "Währung bearbeiten" + #, fuzzy #~| msgid "Serial Number" #~ msgid "Serial Numbers" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index c4c14849c2..976e28c2c6 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-09 12:47+0000\n" +"POT-Creation-Date: 2020-11-10 13:31+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,23 +26,23 @@ msgstr "" msgid "No matching action found" msgstr "" -#: InvenTree/forms.py:130 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "" -#: InvenTree/forms.py:146 +#: InvenTree/forms.py:123 msgid "Confirm item deletion" msgstr "" -#: InvenTree/forms.py:178 +#: InvenTree/forms.py:155 msgid "Enter new password" msgstr "" -#: InvenTree/forms.py:185 +#: InvenTree/forms.py:162 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:220 +#: InvenTree/forms.py:197 msgid "Apply Theme" msgstr "" @@ -99,19 +99,19 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/settings.py:348 +#: InvenTree/settings.py:350 msgid "English" msgstr "" -#: InvenTree/settings.py:349 +#: InvenTree/settings.py:351 msgid "German" msgstr "" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:352 msgid "French" msgstr "" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:353 msgid "Polish" msgstr "" @@ -280,7 +280,7 @@ msgstr "" #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 #: part/templates/part/allocation.html:49 -#: part/templates/part/sale_prices.html:80 stock/forms.py:297 +#: part/templates/part/sale_prices.html:82 stock/forms.py:298 #: stock/templates/stock/item_base.html:40 #: stock/templates/stock/item_base.html:46 #: stock/templates/stock/item_base.html:197 @@ -345,14 +345,13 @@ msgstr "" #: build/models.py:56 build/templates/build/build_base.html:8 #: build/templates/build/build_base.html:35 #: part/templates/part/allocation.html:20 -#: stock/templates/stock/item_base.html:227 msgid "Build Order" msgstr "" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 msgid "Build Orders" msgstr "" @@ -460,7 +459,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:157 stock/models.py:389 +#: build/models.py:157 stock/models.py:390 msgid "Batch Code" msgstr "" @@ -472,11 +471,11 @@ msgstr "" #: company/templates/company/supplier_part_base.html:68 #: company/templates/company/supplier_part_detail.html:24 #: part/templates/part/detail.html:80 part/templates/part/part_base.html:102 -#: stock/models.py:383 stock/templates/stock/item_base.html:279 +#: stock/models.py:384 stock/templates/stock/item_base.html:280 msgid "External Link" msgstr "" -#: build/models.py:177 part/models.py:597 stock/models.py:385 +#: build/models.py:177 part/models.py:609 stock/models.py:386 msgid "Link to external URL" msgstr "" @@ -484,8 +483,8 @@ msgstr "" #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 -#: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 -#: stock/models.py:1428 stock/templates/stock/tabs.html:26 +#: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 +#: stock/models.py:1432 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 #: templates/js/stock.js:116 templates/js/stock.js:578 msgid "Notes" @@ -549,11 +548,11 @@ msgstr "" msgid "Source stock item" msgstr "" -#: build/models.py:976 +#: build/models.py:975 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:984 +#: build/models.py:983 msgid "Destination stock item" msgstr "" @@ -618,8 +617,8 @@ msgid "" "The following stock items will be allocated to the specified build output" msgstr "" -#: build/templates/build/auto_allocate.html:18 stock/forms.py:336 -#: stock/templates/stock/item_base.html:233 +#: build/templates/build/auto_allocate.html:18 stock/forms.py:337 +#: stock/templates/stock/item_base.html:227 #: stock/templates/stock/stock_adjust.html:17 #: templates/InvenTree/search.html:183 templates/js/barcode.js:337 #: templates/js/build.js:418 templates/js/stock.js:570 @@ -675,7 +674,7 @@ msgstr "" #: build/templates/build/build_base.html:83 #: build/templates/build/detail.html:57 #: order/templates/order/receive_parts.html:24 -#: stock/templates/stock/item_base.html:311 templates/InvenTree/search.html:175 +#: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 #: templates/js/order.js:172 templates/js/order.js:254 #: templates/js/stock.js:557 templates/js/stock.js:961 @@ -786,7 +785,7 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:44 stock/forms.py:364 +#: build/templates/build/detail.html:44 stock/forms.py:365 msgid "Destination" msgstr "" @@ -795,7 +794,7 @@ msgid "Destination location not specified" msgstr "" #: build/templates/build/detail.html:68 -#: stock/templates/stock/item_base.html:251 templates/js/stock.js:565 +#: stock/templates/stock/item_base.html:245 templates/js/stock.js:565 #: templates/js/stock.js:968 templates/js/table_filters.js:80 #: templates/js/table_filters.js:151 msgid "Batch" @@ -887,7 +886,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:832 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1647 msgid "Serial numbers already exist" msgstr "" @@ -992,7 +991,7 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 #: stock/views.py:176 msgid "Added attachment" msgstr "" @@ -1013,158 +1012,163 @@ msgstr "" msgid "Deleted attachment" msgstr "" -#: common/models.py:51 +#: common/models.py:55 msgid "InvenTree Instance Name" msgstr "" -#: common/models.py:53 +#: common/models.py:57 msgid "String descriptor for the server instance" msgstr "" -#: common/models.py:57 company/models.py:89 company/models.py:90 +#: common/models.py:61 company/models.py:89 company/models.py:90 msgid "Company name" msgstr "" -#: common/models.py:58 +#: common/models.py:62 msgid "Internal company name" msgstr "" -#: common/models.py:63 -msgid "IPN Regex" -msgstr "" - -#: common/models.py:64 -msgid "Regular expression pattern for matching Part IPN" +#: common/models.py:67 +msgid "Default Currency" msgstr "" #: common/models.py:68 -msgid "Copy Part BOM Data" +msgid "Default currency" msgstr "" -#: common/models.py:69 -msgid "Copy BOM data by default when duplicating a part" +#: common/models.py:74 +msgid "IPN Regex" msgstr "" #: common/models.py:75 +msgid "Regular expression pattern for matching Part IPN" +msgstr "" + +#: common/models.py:79 +msgid "Allow Duplicate IPN" +msgstr "" + +#: common/models.py:80 +msgid "Allow multiple parts to share the same IPN" +msgstr "" + +#: common/models.py:86 +msgid "Copy Part BOM Data" +msgstr "" + +#: common/models.py:87 +msgid "Copy BOM data by default when duplicating a part" +msgstr "" + +#: common/models.py:93 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:76 +#: common/models.py:94 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:82 +#: common/models.py:100 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:83 +#: common/models.py:101 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:89 part/models.py:668 part/templates/part/detail.html:168 +#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "" -#: common/models.py:90 +#: common/models.py:108 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:96 part/models.py:679 part/templates/part/detail.html:188 +#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "" -#: common/models.py:97 +#: common/models.py:115 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:103 part/models.py:684 part/templates/part/detail.html:198 +#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "" -#: common/models.py:104 +#: common/models.py:122 msgid "Parts are salable by default" msgstr "" -#: common/models.py:110 part/models.py:674 part/templates/part/detail.html:178 +#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "" -#: common/models.py:111 +#: common/models.py:129 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:117 +#: common/models.py:135 msgid "Build Order Reference Prefix" msgstr "" -#: common/models.py:118 +#: common/models.py:136 msgid "Prefix value for build order reference" msgstr "" -#: common/models.py:123 +#: common/models.py:141 msgid "Build Order Reference Regex" msgstr "" -#: common/models.py:124 +#: common/models.py:142 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:128 +#: common/models.py:146 msgid "Sales Order Reference Prefix" msgstr "" -#: common/models.py:129 +#: common/models.py:147 msgid "Prefix value for sales order reference" msgstr "" -#: common/models.py:133 +#: common/models.py:151 msgid "Purchase Order Reference Prefix" msgstr "" -#: common/models.py:134 +#: common/models.py:152 msgid "Prefix value for purchase order reference" msgstr "" -#: common/models.py:312 +#: common/models.py:357 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:314 +#: common/models.py:359 msgid "Settings value" msgstr "" -#: common/models.py:366 +#: common/models.py:415 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:380 +#: common/models.py:429 msgid "Key string must be unique" msgstr "" -#: common/models.py:419 -msgid "Currency Symbol e.g. $" +#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 +msgid "Price" msgstr "" -#: common/models.py:421 -msgid "Currency Suffix e.g. AUD" +#: common/models.py:475 +msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:423 -msgid "Currency Description" -msgstr "" - -#: common/models.py:425 -msgid "Currency Value" -msgstr "" - -#: common/models.py:427 -msgid "Use this currency as the base currency" -msgstr "" - -#: common/models.py:510 +#: common/models.py:498 msgid "Default" msgstr "" @@ -1172,19 +1176,7 @@ msgstr "" msgid "Current value" msgstr "" -#: common/views.py:23 -msgid "Create new Currency" -msgstr "" - -#: common/views.py:31 -msgid "Edit Currency" -msgstr "" - -#: common/views.py:38 -msgid "Delete Currency" -msgstr "" - -#: common/views.py:49 +#: common/views.py:25 msgid "Change Setting" msgstr "" @@ -1253,7 +1245,7 @@ msgstr "" msgid "Does this company manufacture parts?" msgstr "" -#: company/models.py:283 stock/models.py:337 +#: company/models.py:283 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "" @@ -1325,14 +1317,14 @@ msgstr "" #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 -#: stock/templates/stock/item_base.html:286 templates/js/company.js:48 +#: stock/templates/stock/item_base.html:287 templates/js/company.js:48 #: templates/js/company.js:164 templates/js/order.js:154 msgid "Supplier" msgstr "" #: company/templates/company/detail.html:26 -#: order/templates/order/sales_order_base.html:81 stock/models.py:372 -#: stock/models.py:373 stock/templates/stock/item_base.html:204 +#: order/templates/order/sales_order_base.html:81 stock/models.py:373 +#: stock/models.py:374 stock/templates/stock/item_base.html:204 #: templates/js/company.js:40 templates/js/order.js:236 msgid "Customer" msgstr "" @@ -1380,21 +1372,21 @@ msgstr "" msgid "Create new Part" msgstr "" -#: company/templates/company/detail_part.html:69 company/views.py:53 +#: company/templates/company/detail_part.html:69 company/views.py:55 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "" -#: company/templates/company/detail_part.html:70 company/views.py:192 +#: company/templates/company/detail_part.html:70 company/views.py:194 msgid "Create new Supplier" msgstr "" -#: company/templates/company/detail_part.html:75 company/views.py:60 +#: company/templates/company/detail_part.html:75 company/views.py:62 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "" -#: company/templates/company/detail_part.html:76 company/views.py:195 +#: company/templates/company/detail_part.html:76 company/views.py:197 msgid "Create new Manufacturer" msgstr "" @@ -1428,7 +1420,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "" @@ -1448,7 +1440,7 @@ msgstr "" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "" @@ -1464,8 +1456,8 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/supplier_part_base.html:6 -#: company/templates/company/supplier_part_base.html:19 stock/models.py:346 -#: stock/templates/stock/item_base.html:291 templates/js/company.js:180 +#: company/templates/company/supplier_part_base.html:19 stock/models.py:347 +#: stock/templates/stock/item_base.html:292 templates/js/company.js:180 msgid "Supplier Part" msgstr "" @@ -1521,28 +1513,23 @@ msgstr "" msgid "Pricing Information" msgstr "" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2360 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 +#: part/templates/part/sale_prices.html:14 part/views.py:2350 msgid "Add Price Break" msgstr "" #: company/templates/company/supplier_part_pricing.html:36 -#: part/templates/part/sale_prices.html:41 +#: part/templates/part/sale_prices.html:43 msgid "No price break information found" msgstr "" -#: company/templates/company/supplier_part_pricing.html:80 -#: part/templates/part/sale_prices.html:85 templates/js/bom.js:234 -msgid "Price" -msgstr "" - -#: company/templates/company/supplier_part_pricing.html:94 -#: part/templates/part/sale_prices.html:99 +#: company/templates/company/supplier_part_pricing.html:87 +#: part/templates/part/sale_prices.html:94 msgid "Edit price break" msgstr "" -#: company/templates/company/supplier_part_pricing.html:95 -#: part/templates/part/sale_prices.html:100 +#: company/templates/company/supplier_part_pricing.html:88 +#: part/templates/part/sale_prices.html:95 msgid "Delete price break" msgstr "" @@ -1557,7 +1544,7 @@ msgstr "" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1571,93 +1558,93 @@ msgstr "" #: order/templates/order/receive_parts.html:14 part/models.py:295 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "" -#: company/views.py:52 part/templates/part/tabs.html:42 +#: company/views.py:54 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "" -#: company/views.py:59 templates/navbar.html:32 +#: company/views.py:61 templates/navbar.html:32 msgid "Manufacturers" msgstr "" -#: company/views.py:66 templates/navbar.html:41 +#: company/views.py:68 templates/navbar.html:41 msgid "Customers" msgstr "" -#: company/views.py:67 +#: company/views.py:69 msgid "New Customer" msgstr "" -#: company/views.py:75 +#: company/views.py:77 msgid "Companies" msgstr "" -#: company/views.py:76 +#: company/views.py:78 msgid "New Company" msgstr "" -#: company/views.py:154 +#: company/views.py:156 msgid "Update Company Image" msgstr "" -#: company/views.py:160 +#: company/views.py:162 msgid "Updated company image" msgstr "" -#: company/views.py:170 +#: company/views.py:172 msgid "Edit Company" msgstr "" -#: company/views.py:175 +#: company/views.py:177 msgid "Edited company information" msgstr "" -#: company/views.py:198 +#: company/views.py:200 msgid "Create new Customer" msgstr "" -#: company/views.py:200 +#: company/views.py:202 msgid "Create new Company" msgstr "" -#: company/views.py:227 +#: company/views.py:229 msgid "Created new company" msgstr "" -#: company/views.py:237 +#: company/views.py:239 msgid "Delete Company" msgstr "" -#: company/views.py:243 +#: company/views.py:245 msgid "Company was deleted" msgstr "" -#: company/views.py:268 +#: company/views.py:270 msgid "Edit Supplier Part" msgstr "" -#: company/views.py:278 templates/js/stock.js:846 +#: company/views.py:280 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "" -#: company/views.py:339 +#: company/views.py:341 msgid "Delete Supplier Part" msgstr "" -#: company/views.py:416 part/views.py:2366 +#: company/views.py:418 part/views.py:2356 msgid "Added new price break" msgstr "" -#: company/views.py:453 part/views.py:2411 +#: company/views.py:454 part/views.py:2400 msgid "Edit Price Break" msgstr "" -#: company/views.py:469 part/views.py:2427 +#: company/views.py:470 part/views.py:2416 msgid "Delete Price Break" msgstr "" @@ -1750,8 +1737,8 @@ msgstr "" msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1477 -#: stock/models.py:243 stock/models.py:816 +#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "" @@ -1789,7 +1776,7 @@ msgstr "" #: order/models.py:484 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 -#: stock/templates/stock/item_base.html:265 templates/js/order.js:139 +#: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "" @@ -1817,11 +1804,11 @@ msgstr "" msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:626 +#: order/models.py:625 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:629 +#: order/models.py:628 msgid "Enter stock allocation quantity" msgstr "" @@ -2032,7 +2019,7 @@ msgid "Sales Order Items" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:154 stock/models.py:377 +#: order/templates/order/sales_order_detail.html:154 stock/models.py:378 #: stock/templates/stock/item_base.html:191 templates/js/build.js:402 msgid "Serial Number" msgstr "" @@ -2269,114 +2256,110 @@ msgstr "" msgid "Error reading BOM file (incorrect row size)" msgstr "" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "File Format" msgstr "" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "Select output file format" msgstr "" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Cascading" msgstr "" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Download cascading / multi-level BOM" msgstr "" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Levels" msgstr "" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:68 +#: part/forms.py:66 msgid "Include Parameter Data" msgstr "" -#: part/forms.py:68 +#: part/forms.py:66 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:70 +#: part/forms.py:68 msgid "Include Stock Data" msgstr "" -#: part/forms.py:70 +#: part/forms.py:68 msgid "Include part stock data in exported BOM" msgstr "" -#: part/forms.py:72 +#: part/forms.py:70 msgid "Include Supplier Data" msgstr "" -#: part/forms.py:72 +#: part/forms.py:70 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1632 +#: part/forms.py:91 part/models.py:1644 msgid "Parent Part" msgstr "" -#: part/forms.py:94 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 msgid "Select parent part to copy BOM from" msgstr "" -#: part/forms.py:100 +#: part/forms.py:98 msgid "Clear existing BOM items" msgstr "" -#: part/forms.py:105 +#: part/forms.py:103 msgid "Confirm BOM duplication" msgstr "" -#: part/forms.py:123 +#: part/forms.py:121 msgid "Confirm that the BOM is correct" msgstr "" -#: part/forms.py:135 +#: part/forms.py:133 msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:154 +#: part/forms.py:152 msgid "Related Part" msgstr "" -#: part/forms.py:173 +#: part/forms.py:171 msgid "Select part category" msgstr "" -#: part/forms.py:189 +#: part/forms.py:187 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:190 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:195 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:196 +#: part/forms.py:194 msgid "Copy Parameters" msgstr "" -#: part/forms.py:201 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "" -#: part/forms.py:298 +#: part/forms.py:296 msgid "Input quantity for price calculation" msgstr "" -#: part/forms.py:301 -msgid "Select currency for price calculation" -msgstr "" - #: part/models.py:67 msgid "Default location for parts in this category" msgstr "" @@ -2411,225 +2394,229 @@ msgstr "" msgid "Most recent serial number is" msgstr "" -#: part/models.py:540 +#: part/models.py:541 +msgid "Duplicate IPN not allowed in part settings" +msgstr "" + +#: part/models.py:552 msgid "Part must be unique for name, IPN and revision" msgstr "" -#: part/models.py:569 part/templates/part/detail.html:19 +#: part/models.py:581 part/templates/part/detail.html:19 msgid "Part name" msgstr "" -#: part/models.py:573 +#: part/models.py:585 msgid "Is this part a template part?" msgstr "" -#: part/models.py:582 +#: part/models.py:594 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:584 +#: part/models.py:596 msgid "Part description" msgstr "" -#: part/models.py:586 +#: part/models.py:598 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:591 +#: part/models.py:603 msgid "Part category" msgstr "" -#: part/models.py:593 +#: part/models.py:605 msgid "Internal Part Number" msgstr "" -#: part/models.py:595 +#: part/models.py:607 msgid "Part revision or version number" msgstr "" -#: part/models.py:609 +#: part/models.py:621 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:653 +#: part/models.py:665 msgid "Default supplier part" msgstr "" -#: part/models.py:656 +#: part/models.py:668 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:658 +#: part/models.py:670 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:662 part/templates/part/detail.html:158 +#: part/models.py:674 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "" -#: part/models.py:663 +#: part/models.py:675 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:669 +#: part/models.py:681 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:675 +#: part/models.py:687 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:680 +#: part/models.py:692 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:685 +#: part/models.py:697 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:689 part/templates/part/detail.html:215 +#: part/models.py:701 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "" -#: part/models.py:690 +#: part/models.py:702 msgid "Is this part active?" msgstr "" -#: part/models.py:694 part/templates/part/detail.html:138 +#: part/models.py:706 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "" -#: part/models.py:695 +#: part/models.py:707 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:697 +#: part/models.py:709 msgid "Part notes - supports Markdown formatting" msgstr "" -#: part/models.py:699 +#: part/models.py:711 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1505 +#: part/models.py:1517 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1522 +#: part/models.py:1534 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1541 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1542 +#: part/models.py:1554 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1547 +#: part/models.py:1559 msgid "Test Description" msgstr "" -#: part/models.py:1548 +#: part/models.py:1560 msgid "Enter description for this test" msgstr "" -#: part/models.py:1553 templates/js/part.js:576 +#: part/models.py:1565 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1554 +#: part/models.py:1566 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1559 templates/js/part.js:584 +#: part/models.py:1571 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1560 +#: part/models.py:1572 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1565 templates/js/part.js:591 +#: part/models.py:1577 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1566 +#: part/models.py:1578 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1599 +#: part/models.py:1611 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1604 +#: part/models.py:1616 msgid "Parameter Name" msgstr "" -#: part/models.py:1606 +#: part/models.py:1618 msgid "Parameter Units" msgstr "" -#: part/models.py:1634 +#: part/models.py:1646 msgid "Parameter Template" msgstr "" -#: part/models.py:1636 +#: part/models.py:1648 msgid "Parameter Value" msgstr "" -#: part/models.py:1673 +#: part/models.py:1685 msgid "Select parent part" msgstr "" -#: part/models.py:1681 +#: part/models.py:1693 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1687 +#: part/models.py:1699 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1689 +#: part/models.py:1701 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1692 +#: part/models.py:1704 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1695 +#: part/models.py:1707 msgid "BOM item reference" msgstr "" -#: part/models.py:1698 +#: part/models.py:1710 msgid "BOM item notes" msgstr "" -#: part/models.py:1700 +#: part/models.py:1712 msgid "BOM line checksum" msgstr "" -#: part/models.py:1767 part/views.py:1483 part/views.py:1535 -#: stock/models.py:233 +#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: stock/models.py:234 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1783 +#: part/models.py:1795 msgid "BOM Item" msgstr "" -#: part/models.py:1898 +#: part/models.py:1910 msgid "Select Related Part" msgstr "" -#: part/models.py:1930 +#: part/models.py:1942 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -2650,7 +2637,7 @@ msgstr "" #: part/templates/part/allocation.html:45 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:72 -#: stock/templates/stock/item_base.html:273 +#: stock/templates/stock/item_base.html:274 #: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:724 #: templates/js/stock.js:695 templates/js/stock.js:944 msgid "Stock Item" @@ -2717,7 +2704,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1774 +#: part/templates/part/bom.html:62 part/views.py:1776 msgid "Export Bill of Materials" msgstr "" @@ -2813,7 +2800,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2177 +#: part/templates/part/category.html:24 part/views.py:2167 msgid "Create new part category" msgstr "" @@ -2967,7 +2954,7 @@ msgstr "" msgid "Part is not a virtual part" msgstr "" -#: part/templates/part/detail.html:148 stock/forms.py:248 +#: part/templates/part/detail.html:148 stock/forms.py:249 #: templates/js/table_filters.js:23 templates/js/table_filters.js:248 msgid "Template" msgstr "" @@ -3036,17 +3023,17 @@ msgstr "" msgid "Add new parameter" msgstr "" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:35 +#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 msgid "New Parameter" msgstr "" -#: part/templates/part/params.html:25 stock/models.py:1415 +#: part/templates/part/params.html:25 stock/models.py:1419 #: templates/js/stock.js:112 msgid "Value" msgstr "" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:147 +#: part/templates/part/supplier.html:19 users/models.py:148 msgid "Delete" msgstr "" @@ -3226,7 +3213,7 @@ msgstr "" msgid "Used In" msgstr "" -#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:317 +#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:318 msgid "Tests" msgstr "" @@ -3254,208 +3241,208 @@ msgstr "" msgid "New Variant" msgstr "" -#: part/views.py:80 +#: part/views.py:82 msgid "Add Related Part" msgstr "" -#: part/views.py:136 +#: part/views.py:138 msgid "Delete Related Part" msgstr "" -#: part/views.py:148 +#: part/views.py:150 msgid "Add part attachment" msgstr "" -#: part/views.py:203 templates/attachment_table.html:34 +#: part/views.py:205 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:209 +#: part/views.py:211 msgid "Part attachment updated" msgstr "" -#: part/views.py:224 +#: part/views.py:226 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:232 +#: part/views.py:234 msgid "Deleted part attachment" msgstr "" -#: part/views.py:241 +#: part/views.py:243 msgid "Create Test Template" msgstr "" -#: part/views.py:270 +#: part/views.py:272 msgid "Edit Test Template" msgstr "" -#: part/views.py:286 +#: part/views.py:288 msgid "Delete Test Template" msgstr "" -#: part/views.py:295 +#: part/views.py:297 msgid "Set Part Category" msgstr "" -#: part/views.py:345 +#: part/views.py:347 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:380 +#: part/views.py:382 msgid "Create Variant" msgstr "" -#: part/views.py:462 +#: part/views.py:464 msgid "Duplicate Part" msgstr "" -#: part/views.py:469 +#: part/views.py:471 msgid "Copied part" msgstr "" -#: part/views.py:523 part/views.py:653 +#: part/views.py:525 part/views.py:655 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:588 templates/js/stock.js:840 +#: part/views.py:590 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:595 +#: part/views.py:597 msgid "Created new part" msgstr "" -#: part/views.py:811 +#: part/views.py:813 msgid "Part QR Code" msgstr "" -#: part/views.py:830 +#: part/views.py:832 msgid "Upload Part Image" msgstr "" -#: part/views.py:838 part/views.py:875 +#: part/views.py:840 part/views.py:877 msgid "Updated part image" msgstr "" -#: part/views.py:847 +#: part/views.py:849 msgid "Select Part Image" msgstr "" -#: part/views.py:878 +#: part/views.py:880 msgid "Part image not found" msgstr "" -#: part/views.py:889 +#: part/views.py:891 msgid "Edit Part Properties" msgstr "" -#: part/views.py:916 +#: part/views.py:918 msgid "Duplicate BOM" msgstr "" -#: part/views.py:947 +#: part/views.py:949 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:968 +#: part/views.py:970 msgid "Validate BOM" msgstr "" -#: part/views.py:991 +#: part/views.py:993 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:1002 +#: part/views.py:1004 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1136 +#: part/views.py:1138 msgid "No BOM file provided" msgstr "" -#: part/views.py:1486 +#: part/views.py:1488 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1511 part/views.py:1514 +#: part/views.py:1513 part/views.py:1516 msgid "Select valid part" msgstr "" -#: part/views.py:1520 +#: part/views.py:1522 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1558 +#: part/views.py:1560 msgid "Select a part" msgstr "" -#: part/views.py:1564 +#: part/views.py:1566 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1568 +#: part/views.py:1570 msgid "Specify quantity" msgstr "" -#: part/views.py:1824 +#: part/views.py:1826 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1833 +#: part/views.py:1835 msgid "Part was deleted" msgstr "" -#: part/views.py:1842 +#: part/views.py:1844 msgid "Part Pricing" msgstr "" -#: part/views.py:1968 +#: part/views.py:1958 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1978 +#: part/views.py:1968 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1987 +#: part/views.py:1977 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1997 +#: part/views.py:1987 msgid "Create Part Parameter" msgstr "" -#: part/views.py:2049 +#: part/views.py:2039 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:2065 +#: part/views.py:2055 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2124 +#: part/views.py:2114 msgid "Edit Part Category" msgstr "" -#: part/views.py:2161 +#: part/views.py:2151 msgid "Delete Part Category" msgstr "" -#: part/views.py:2169 +#: part/views.py:2159 msgid "Part category was deleted" msgstr "" -#: part/views.py:2232 +#: part/views.py:2222 msgid "Create BOM Item" msgstr "" -#: part/views.py:2300 +#: part/views.py:2290 msgid "Edit BOM item" msgstr "" -#: part/views.py:2350 +#: part/views.py:2340 msgid "Confim BOM item deletion" msgstr "" @@ -3491,291 +3478,295 @@ msgstr "" msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:191 +#: stock/forms.py:192 msgid "Label" msgstr "" -#: stock/forms.py:192 stock/forms.py:248 +#: stock/forms.py:193 stock/forms.py:249 msgid "Select test report template" msgstr "" -#: stock/forms.py:256 +#: stock/forms.py:257 msgid "Include stock items in sub locations" msgstr "" -#: stock/forms.py:291 +#: stock/forms.py:292 msgid "Stock item to install" msgstr "" -#: stock/forms.py:298 +#: stock/forms.py:299 msgid "Stock quantity to assign" msgstr "" -#: stock/forms.py:326 +#: stock/forms.py:327 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:336 +#: stock/forms.py:337 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:338 +#: stock/forms.py:339 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:340 +#: stock/forms.py:341 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:340 +#: stock/forms.py:341 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/forms.py:364 +#: stock/forms.py:365 msgid "Destination stock location" msgstr "" -#: stock/forms.py:366 +#: stock/forms.py:367 msgid "Add note (required)" msgstr "" -#: stock/forms.py:370 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 msgid "Confirm stock adjustment" msgstr "" -#: stock/forms.py:370 +#: stock/forms.py:371 msgid "Confirm movement of stock items" msgstr "" -#: stock/forms.py:372 +#: stock/forms.py:373 msgid "Set Default Location" msgstr "" -#: stock/forms.py:372 +#: stock/forms.py:373 msgid "Set the destination as the default location for selected parts" msgstr "" -#: stock/models.py:178 +#: stock/models.py:179 msgid "Created stock item" msgstr "" -#: stock/models.py:214 +#: stock/models.py:215 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:250 +#: stock/models.py:251 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:260 stock/models.py:269 +#: stock/models.py:261 stock/models.py:270 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:261 +#: stock/models.py:262 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:283 +#: stock/models.py:284 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:289 +#: stock/models.py:290 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:296 +#: stock/models.py:297 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:329 +#: stock/models.py:330 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:338 +#: stock/models.py:339 msgid "Base part" msgstr "" -#: stock/models.py:347 +#: stock/models.py:348 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:352 stock/templates/stock/stock_app_base.html:7 +#: stock/models.py:353 stock/templates/stock/stock_app_base.html:7 msgid "Stock Location" msgstr "" -#: stock/models.py:355 +#: stock/models.py:356 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:360 stock/templates/stock/item_base.html:212 +#: stock/models.py:361 stock/templates/stock/item_base.html:212 msgid "Installed In" msgstr "" -#: stock/models.py:363 +#: stock/models.py:364 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:379 +#: stock/models.py:380 msgid "Serial number for this item" msgstr "" -#: stock/models.py:391 +#: stock/models.py:392 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:395 +#: stock/models.py:396 msgid "Stock Quantity" msgstr "" -#: stock/models.py:404 +#: stock/models.py:405 msgid "Source Build" msgstr "" -#: stock/models.py:406 +#: stock/models.py:407 msgid "Build for this stock item" msgstr "" -#: stock/models.py:417 +#: stock/models.py:418 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:420 +#: stock/models.py:421 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:426 +#: stock/models.py:427 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:433 -msgid "Destination Build Order" -msgstr "" - -#: stock/models.py:446 +#: stock/models.py:439 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:456 stock/templates/stock/item_notes.html:14 +#: stock/models.py:449 stock/templates/stock/item_notes.html:14 #: stock/templates/stock/item_notes.html:30 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:507 -msgid "Assigned to Customer" +#: stock/models.py:457 stock/templates/stock/item_base.html:266 +msgid "Purchase Price" +msgstr "" + +#: stock/models.py:458 +msgid "Single unit purchase price at time of purchase" msgstr "" #: stock/models.py:509 +msgid "Assigned to Customer" +msgstr "" + +#: stock/models.py:511 msgid "Manually assigned to customer" msgstr "" -#: stock/models.py:522 +#: stock/models.py:524 msgid "Returned from customer" msgstr "" -#: stock/models.py:524 +#: stock/models.py:526 msgid "Returned to location" msgstr "" -#: stock/models.py:652 +#: stock/models.py:651 msgid "Installed into stock item" msgstr "" -#: stock/models.py:660 +#: stock/models.py:659 msgid "Installed stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:683 msgid "Uninstalled stock item" msgstr "" -#: stock/models.py:703 +#: stock/models.py:702 msgid "Uninstalled into location" msgstr "" -#: stock/models.py:807 +#: stock/models.py:802 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:813 +#: stock/models.py:808 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:819 +#: stock/models.py:814 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:822 +#: stock/models.py:817 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:825 +#: stock/models.py:820 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:857 +#: stock/models.py:852 msgid "Add serial number" msgstr "" -#: stock/models.py:860 +#: stock/models.py:855 #, python-brace-format msgid "Serialized {n} items" msgstr "" -#: stock/models.py:971 +#: stock/models.py:966 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1316 +#: stock/models.py:1320 msgid "Tracking entry title" msgstr "" -#: stock/models.py:1318 +#: stock/models.py:1322 msgid "Entry notes" msgstr "" -#: stock/models.py:1320 +#: stock/models.py:1324 msgid "Link to external page for further information" msgstr "" -#: stock/models.py:1380 +#: stock/models.py:1384 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1386 +#: stock/models.py:1390 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1403 +#: stock/models.py:1407 msgid "Test" msgstr "" -#: stock/models.py:1404 +#: stock/models.py:1408 msgid "Test name" msgstr "" -#: stock/models.py:1409 +#: stock/models.py:1413 msgid "Result" msgstr "" -#: stock/models.py:1410 templates/js/table_filters.js:162 +#: stock/models.py:1414 templates/js/table_filters.js:162 msgid "Test result" msgstr "" -#: stock/models.py:1416 +#: stock/models.py:1420 msgid "Test output value" msgstr "" -#: stock/models.py:1422 +#: stock/models.py:1426 msgid "Attachment" msgstr "" -#: stock/models.py:1423 +#: stock/models.py:1427 msgid "Test result attachment" msgstr "" -#: stock/models.py:1429 +#: stock/models.py:1433 msgid "Test notes" msgstr "" @@ -3905,32 +3896,32 @@ msgstr "" msgid "Stock Item Details" msgstr "" -#: stock/templates/stock/item_base.html:237 templates/js/build.js:426 +#: stock/templates/stock/item_base.html:231 templates/js/build.js:426 msgid "No location set" msgstr "" -#: stock/templates/stock/item_base.html:244 +#: stock/templates/stock/item_base.html:238 msgid "Barcode Identifier" msgstr "" -#: stock/templates/stock/item_base.html:258 templates/js/build.js:626 +#: stock/templates/stock/item_base.html:252 templates/js/build.js:626 #: templates/navbar.html:25 msgid "Build" msgstr "" -#: stock/templates/stock/item_base.html:272 +#: stock/templates/stock/item_base.html:273 msgid "Parent Item" msgstr "" -#: stock/templates/stock/item_base.html:297 +#: stock/templates/stock/item_base.html:298 msgid "Last Updated" msgstr "" -#: stock/templates/stock/item_base.html:302 +#: stock/templates/stock/item_base.html:303 msgid "Last Stocktake" msgstr "" -#: stock/templates/stock/item_base.html:306 +#: stock/templates/stock/item_base.html:307 msgid "No stocktake performed" msgstr "" @@ -4369,18 +4360,6 @@ msgstr "" msgid "Build Order Settings" msgstr "" -#: templates/InvenTree/settings/currency.html:5 -msgid "General Settings" -msgstr "" - -#: templates/InvenTree/settings/currency.html:14 -msgid "Currencies" -msgstr "" - -#: templates/InvenTree/settings/currency.html:18 -msgid "New Currency" -msgstr "" - #: templates/InvenTree/settings/global.html:10 msgid "Global InvenTree Settings" msgstr "" @@ -4393,19 +4372,19 @@ msgstr "" msgid "Part Options" msgstr "" -#: templates/InvenTree/settings/part.html:31 +#: templates/InvenTree/settings/part.html:33 msgid "Part Parameter Templates" msgstr "" -#: templates/InvenTree/settings/part.html:52 +#: templates/InvenTree/settings/part.html:54 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/part.html:72 +#: templates/InvenTree/settings/part.html:74 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/part.html:73 +#: templates/InvenTree/settings/part.html:75 msgid "Delete Template" msgstr "" @@ -4455,10 +4434,6 @@ msgstr "" msgid "Global" msgstr "" -#: templates/InvenTree/settings/tabs.html:19 -msgid "Currency" -msgstr "" - #: templates/InvenTree/settings/theme.html:10 msgid "Theme Settings" msgstr "" @@ -5188,38 +5163,38 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:130 +#: users/models.py:131 msgid "Permission set" msgstr "" -#: users/models.py:138 +#: users/models.py:139 msgid "Group" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "View" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "Permission to view items" msgstr "" -#: users/models.py:143 +#: users/models.py:144 msgid "Add" msgstr "" -#: users/models.py:143 +#: users/models.py:144 msgid "Permission to add items" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Change" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Permissions to edit items" msgstr "" -#: users/models.py:147 +#: users/models.py:148 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index c4c14849c2..976e28c2c6 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2020-11-09 12:47+0000\n" +"POT-Creation-Date: 2020-11-10 13:31+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,23 +26,23 @@ msgstr "" msgid "No matching action found" msgstr "" -#: InvenTree/forms.py:130 build/forms.py:82 build/forms.py:170 +#: InvenTree/forms.py:107 build/forms.py:82 build/forms.py:170 msgid "Confirm" msgstr "" -#: InvenTree/forms.py:146 +#: InvenTree/forms.py:123 msgid "Confirm item deletion" msgstr "" -#: InvenTree/forms.py:178 +#: InvenTree/forms.py:155 msgid "Enter new password" msgstr "" -#: InvenTree/forms.py:185 +#: InvenTree/forms.py:162 msgid "Confirm new password" msgstr "" -#: InvenTree/forms.py:220 +#: InvenTree/forms.py:197 msgid "Apply Theme" msgstr "" @@ -99,19 +99,19 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/settings.py:348 +#: InvenTree/settings.py:350 msgid "English" msgstr "" -#: InvenTree/settings.py:349 +#: InvenTree/settings.py:351 msgid "German" msgstr "" -#: InvenTree/settings.py:350 +#: InvenTree/settings.py:352 msgid "French" msgstr "" -#: InvenTree/settings.py:351 +#: InvenTree/settings.py:353 msgid "Polish" msgstr "" @@ -280,7 +280,7 @@ msgstr "" #: order/templates/order/sales_order_detail.html:156 #: part/templates/part/allocation.html:16 #: part/templates/part/allocation.html:49 -#: part/templates/part/sale_prices.html:80 stock/forms.py:297 +#: part/templates/part/sale_prices.html:82 stock/forms.py:298 #: stock/templates/stock/item_base.html:40 #: stock/templates/stock/item_base.html:46 #: stock/templates/stock/item_base.html:197 @@ -345,14 +345,13 @@ msgstr "" #: build/models.py:56 build/templates/build/build_base.html:8 #: build/templates/build/build_base.html:35 #: part/templates/part/allocation.html:20 -#: stock/templates/stock/item_base.html:227 msgid "Build Order" msgstr "" #: build/models.py:57 build/templates/build/index.html:6 #: build/templates/build/index.html:14 order/templates/order/so_builds.html:11 #: order/templates/order/so_tabs.html:9 part/templates/part/tabs.html:31 -#: templates/InvenTree/settings/tabs.html:28 users/models.py:30 +#: templates/InvenTree/settings/tabs.html:25 users/models.py:30 msgid "Build Orders" msgstr "" @@ -460,7 +459,7 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:157 stock/models.py:389 +#: build/models.py:157 stock/models.py:390 msgid "Batch Code" msgstr "" @@ -472,11 +471,11 @@ msgstr "" #: company/templates/company/supplier_part_base.html:68 #: company/templates/company/supplier_part_detail.html:24 #: part/templates/part/detail.html:80 part/templates/part/part_base.html:102 -#: stock/models.py:383 stock/templates/stock/item_base.html:279 +#: stock/models.py:384 stock/templates/stock/item_base.html:280 msgid "External Link" msgstr "" -#: build/models.py:177 part/models.py:597 stock/models.py:385 +#: build/models.py:177 part/models.py:609 stock/models.py:386 msgid "Link to external URL" msgstr "" @@ -484,8 +483,8 @@ msgstr "" #: company/templates/company/tabs.html:33 order/templates/order/po_tabs.html:18 #: order/templates/order/purchase_order_detail.html:203 #: order/templates/order/so_tabs.html:23 part/templates/part/tabs.html:73 -#: stock/forms.py:306 stock/forms.py:338 stock/forms.py:366 stock/models.py:455 -#: stock/models.py:1428 stock/templates/stock/tabs.html:26 +#: stock/forms.py:307 stock/forms.py:339 stock/forms.py:367 stock/models.py:448 +#: stock/models.py:1432 stock/templates/stock/tabs.html:26 #: templates/js/barcode.js:391 templates/js/bom.js:250 #: templates/js/stock.js:116 templates/js/stock.js:578 msgid "Notes" @@ -549,11 +548,11 @@ msgstr "" msgid "Source stock item" msgstr "" -#: build/models.py:976 +#: build/models.py:975 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:984 +#: build/models.py:983 msgid "Destination stock item" msgstr "" @@ -618,8 +617,8 @@ msgid "" "The following stock items will be allocated to the specified build output" msgstr "" -#: build/templates/build/auto_allocate.html:18 stock/forms.py:336 -#: stock/templates/stock/item_base.html:233 +#: build/templates/build/auto_allocate.html:18 stock/forms.py:337 +#: stock/templates/stock/item_base.html:227 #: stock/templates/stock/stock_adjust.html:17 #: templates/InvenTree/search.html:183 templates/js/barcode.js:337 #: templates/js/build.js:418 templates/js/stock.js:570 @@ -675,7 +674,7 @@ msgstr "" #: build/templates/build/build_base.html:83 #: build/templates/build/detail.html:57 #: order/templates/order/receive_parts.html:24 -#: stock/templates/stock/item_base.html:311 templates/InvenTree/search.html:175 +#: stock/templates/stock/item_base.html:312 templates/InvenTree/search.html:175 #: templates/js/barcode.js:42 templates/js/build.js:675 #: templates/js/order.js:172 templates/js/order.js:254 #: templates/js/stock.js:557 templates/js/stock.js:961 @@ -786,7 +785,7 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:44 stock/forms.py:364 +#: build/templates/build/detail.html:44 stock/forms.py:365 msgid "Destination" msgstr "" @@ -795,7 +794,7 @@ msgid "Destination location not specified" msgstr "" #: build/templates/build/detail.html:68 -#: stock/templates/stock/item_base.html:251 templates/js/stock.js:565 +#: stock/templates/stock/item_base.html:245 templates/js/stock.js:565 #: templates/js/stock.js:968 templates/js/table_filters.js:80 #: templates/js/table_filters.js:151 msgid "Batch" @@ -887,7 +886,7 @@ msgstr "" msgid "Create Build Output" msgstr "" -#: build/views.py:207 stock/models.py:832 stock/views.py:1647 +#: build/views.py:207 stock/models.py:827 stock/views.py:1647 msgid "Serial numbers already exist" msgstr "" @@ -992,7 +991,7 @@ msgstr "" msgid "Add Build Order Attachment" msgstr "" -#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:164 +#: build/views.py:1059 order/views.py:111 order/views.py:164 part/views.py:166 #: stock/views.py:176 msgid "Added attachment" msgstr "" @@ -1013,158 +1012,163 @@ msgstr "" msgid "Deleted attachment" msgstr "" -#: common/models.py:51 +#: common/models.py:55 msgid "InvenTree Instance Name" msgstr "" -#: common/models.py:53 +#: common/models.py:57 msgid "String descriptor for the server instance" msgstr "" -#: common/models.py:57 company/models.py:89 company/models.py:90 +#: common/models.py:61 company/models.py:89 company/models.py:90 msgid "Company name" msgstr "" -#: common/models.py:58 +#: common/models.py:62 msgid "Internal company name" msgstr "" -#: common/models.py:63 -msgid "IPN Regex" -msgstr "" - -#: common/models.py:64 -msgid "Regular expression pattern for matching Part IPN" +#: common/models.py:67 +msgid "Default Currency" msgstr "" #: common/models.py:68 -msgid "Copy Part BOM Data" +msgid "Default currency" msgstr "" -#: common/models.py:69 -msgid "Copy BOM data by default when duplicating a part" +#: common/models.py:74 +msgid "IPN Regex" msgstr "" #: common/models.py:75 +msgid "Regular expression pattern for matching Part IPN" +msgstr "" + +#: common/models.py:79 +msgid "Allow Duplicate IPN" +msgstr "" + +#: common/models.py:80 +msgid "Allow multiple parts to share the same IPN" +msgstr "" + +#: common/models.py:86 +msgid "Copy Part BOM Data" +msgstr "" + +#: common/models.py:87 +msgid "Copy BOM data by default when duplicating a part" +msgstr "" + +#: common/models.py:93 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:76 +#: common/models.py:94 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:82 +#: common/models.py:100 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:83 +#: common/models.py:101 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:89 part/models.py:668 part/templates/part/detail.html:168 +#: common/models.py:107 part/models.py:680 part/templates/part/detail.html:168 #: templates/js/table_filters.js:264 msgid "Component" msgstr "" -#: common/models.py:90 +#: common/models.py:108 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:96 part/models.py:679 part/templates/part/detail.html:188 +#: common/models.py:114 part/models.py:691 part/templates/part/detail.html:188 msgid "Purchaseable" msgstr "" -#: common/models.py:97 +#: common/models.py:115 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:103 part/models.py:684 part/templates/part/detail.html:198 +#: common/models.py:121 part/models.py:696 part/templates/part/detail.html:198 #: templates/js/table_filters.js:272 msgid "Salable" msgstr "" -#: common/models.py:104 +#: common/models.py:122 msgid "Parts are salable by default" msgstr "" -#: common/models.py:110 part/models.py:674 part/templates/part/detail.html:178 +#: common/models.py:128 part/models.py:686 part/templates/part/detail.html:178 #: templates/js/table_filters.js:31 templates/js/table_filters.js:276 msgid "Trackable" msgstr "" -#: common/models.py:111 +#: common/models.py:129 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:117 +#: common/models.py:135 msgid "Build Order Reference Prefix" msgstr "" -#: common/models.py:118 +#: common/models.py:136 msgid "Prefix value for build order reference" msgstr "" -#: common/models.py:123 +#: common/models.py:141 msgid "Build Order Reference Regex" msgstr "" -#: common/models.py:124 +#: common/models.py:142 msgid "Regular expression pattern for matching build order reference" msgstr "" -#: common/models.py:128 +#: common/models.py:146 msgid "Sales Order Reference Prefix" msgstr "" -#: common/models.py:129 +#: common/models.py:147 msgid "Prefix value for sales order reference" msgstr "" -#: common/models.py:133 +#: common/models.py:151 msgid "Purchase Order Reference Prefix" msgstr "" -#: common/models.py:134 +#: common/models.py:152 msgid "Prefix value for purchase order reference" msgstr "" -#: common/models.py:312 +#: common/models.py:357 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:314 +#: common/models.py:359 msgid "Settings value" msgstr "" -#: common/models.py:366 +#: common/models.py:415 msgid "Value must be a boolean value" msgstr "" -#: common/models.py:380 +#: common/models.py:429 msgid "Key string must be unique" msgstr "" -#: common/models.py:419 -msgid "Currency Symbol e.g. $" +#: common/models.py:474 company/templates/company/supplier_part_pricing.html:80 +#: part/templates/part/sale_prices.html:87 templates/js/bom.js:234 +msgid "Price" msgstr "" -#: common/models.py:421 -msgid "Currency Suffix e.g. AUD" +#: common/models.py:475 +msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:423 -msgid "Currency Description" -msgstr "" - -#: common/models.py:425 -msgid "Currency Value" -msgstr "" - -#: common/models.py:427 -msgid "Use this currency as the base currency" -msgstr "" - -#: common/models.py:510 +#: common/models.py:498 msgid "Default" msgstr "" @@ -1172,19 +1176,7 @@ msgstr "" msgid "Current value" msgstr "" -#: common/views.py:23 -msgid "Create new Currency" -msgstr "" - -#: common/views.py:31 -msgid "Edit Currency" -msgstr "" - -#: common/views.py:38 -msgid "Delete Currency" -msgstr "" - -#: common/views.py:49 +#: common/views.py:25 msgid "Change Setting" msgstr "" @@ -1253,7 +1245,7 @@ msgstr "" msgid "Does this company manufacture parts?" msgstr "" -#: company/models.py:283 stock/models.py:337 +#: company/models.py:283 stock/models.py:338 #: stock/templates/stock/item_base.html:177 msgid "Base Part" msgstr "" @@ -1325,14 +1317,14 @@ msgstr "" #: company/templates/company/supplier_part_detail.html:21 #: order/templates/order/order_base.html:79 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 -#: stock/templates/stock/item_base.html:286 templates/js/company.js:48 +#: stock/templates/stock/item_base.html:287 templates/js/company.js:48 #: templates/js/company.js:164 templates/js/order.js:154 msgid "Supplier" msgstr "" #: company/templates/company/detail.html:26 -#: order/templates/order/sales_order_base.html:81 stock/models.py:372 -#: stock/models.py:373 stock/templates/stock/item_base.html:204 +#: order/templates/order/sales_order_base.html:81 stock/models.py:373 +#: stock/models.py:374 stock/templates/stock/item_base.html:204 #: templates/js/company.js:40 templates/js/order.js:236 msgid "Customer" msgstr "" @@ -1380,21 +1372,21 @@ msgstr "" msgid "Create new Part" msgstr "" -#: company/templates/company/detail_part.html:69 company/views.py:53 +#: company/templates/company/detail_part.html:69 company/views.py:55 #: part/templates/part/supplier.html:47 msgid "New Supplier" msgstr "" -#: company/templates/company/detail_part.html:70 company/views.py:192 +#: company/templates/company/detail_part.html:70 company/views.py:194 msgid "Create new Supplier" msgstr "" -#: company/templates/company/detail_part.html:75 company/views.py:60 +#: company/templates/company/detail_part.html:75 company/views.py:62 #: part/templates/part/supplier.html:53 msgid "New Manufacturer" msgstr "" -#: company/templates/company/detail_part.html:76 company/views.py:195 +#: company/templates/company/detail_part.html:76 company/views.py:197 msgid "Create new Manufacturer" msgstr "" @@ -1428,7 +1420,7 @@ msgstr "" #: order/templates/order/purchase_orders.html:7 #: order/templates/order/purchase_orders.html:12 #: part/templates/part/orders.html:9 part/templates/part/tabs.html:48 -#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:33 +#: templates/InvenTree/settings/tabs.html:28 templates/navbar.html:33 #: users/models.py:31 msgid "Purchase Orders" msgstr "" @@ -1448,7 +1440,7 @@ msgstr "" #: order/templates/order/sales_orders.html:7 #: order/templates/order/sales_orders.html:12 #: part/templates/part/sales_orders.html:9 part/templates/part/tabs.html:56 -#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:42 +#: templates/InvenTree/settings/tabs.html:31 templates/navbar.html:42 #: users/models.py:32 msgid "Sales Orders" msgstr "" @@ -1464,8 +1456,8 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/supplier_part_base.html:6 -#: company/templates/company/supplier_part_base.html:19 stock/models.py:346 -#: stock/templates/stock/item_base.html:291 templates/js/company.js:180 +#: company/templates/company/supplier_part_base.html:19 stock/models.py:347 +#: stock/templates/stock/item_base.html:292 templates/js/company.js:180 msgid "Supplier Part" msgstr "" @@ -1521,28 +1513,23 @@ msgstr "" msgid "Pricing Information" msgstr "" -#: company/templates/company/supplier_part_pricing.html:17 company/views.py:410 -#: part/templates/part/sale_prices.html:13 part/views.py:2360 +#: company/templates/company/supplier_part_pricing.html:17 company/views.py:412 +#: part/templates/part/sale_prices.html:14 part/views.py:2350 msgid "Add Price Break" msgstr "" #: company/templates/company/supplier_part_pricing.html:36 -#: part/templates/part/sale_prices.html:41 +#: part/templates/part/sale_prices.html:43 msgid "No price break information found" msgstr "" -#: company/templates/company/supplier_part_pricing.html:80 -#: part/templates/part/sale_prices.html:85 templates/js/bom.js:234 -msgid "Price" -msgstr "" - -#: company/templates/company/supplier_part_pricing.html:94 -#: part/templates/part/sale_prices.html:99 +#: company/templates/company/supplier_part_pricing.html:87 +#: part/templates/part/sale_prices.html:94 msgid "Edit price break" msgstr "" -#: company/templates/company/supplier_part_pricing.html:95 -#: part/templates/part/sale_prices.html:100 +#: company/templates/company/supplier_part_pricing.html:88 +#: part/templates/part/sale_prices.html:95 msgid "Delete price break" msgstr "" @@ -1557,7 +1544,7 @@ msgstr "" #: company/templates/company/supplier_part_tabs.html:8 #: company/templates/company/tabs.html:12 part/templates/part/tabs.html:18 #: stock/templates/stock/location.html:17 templates/InvenTree/search.html:155 -#: templates/InvenTree/settings/tabs.html:25 templates/js/part.js:192 +#: templates/InvenTree/settings/tabs.html:22 templates/js/part.js:192 #: templates/js/part.js:418 templates/js/stock.js:502 templates/navbar.html:22 #: users/models.py:29 msgid "Stock" @@ -1571,93 +1558,93 @@ msgstr "" #: order/templates/order/receive_parts.html:14 part/models.py:295 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:94 #: part/templates/part/category_tabs.html:6 -#: templates/InvenTree/settings/tabs.html:22 templates/navbar.html:19 +#: templates/InvenTree/settings/tabs.html:19 templates/navbar.html:19 #: templates/stats.html:8 templates/stats.html:17 users/models.py:28 msgid "Parts" msgstr "" -#: company/views.py:52 part/templates/part/tabs.html:42 +#: company/views.py:54 part/templates/part/tabs.html:42 #: templates/navbar.html:31 msgid "Suppliers" msgstr "" -#: company/views.py:59 templates/navbar.html:32 +#: company/views.py:61 templates/navbar.html:32 msgid "Manufacturers" msgstr "" -#: company/views.py:66 templates/navbar.html:41 +#: company/views.py:68 templates/navbar.html:41 msgid "Customers" msgstr "" -#: company/views.py:67 +#: company/views.py:69 msgid "New Customer" msgstr "" -#: company/views.py:75 +#: company/views.py:77 msgid "Companies" msgstr "" -#: company/views.py:76 +#: company/views.py:78 msgid "New Company" msgstr "" -#: company/views.py:154 +#: company/views.py:156 msgid "Update Company Image" msgstr "" -#: company/views.py:160 +#: company/views.py:162 msgid "Updated company image" msgstr "" -#: company/views.py:170 +#: company/views.py:172 msgid "Edit Company" msgstr "" -#: company/views.py:175 +#: company/views.py:177 msgid "Edited company information" msgstr "" -#: company/views.py:198 +#: company/views.py:200 msgid "Create new Customer" msgstr "" -#: company/views.py:200 +#: company/views.py:202 msgid "Create new Company" msgstr "" -#: company/views.py:227 +#: company/views.py:229 msgid "Created new company" msgstr "" -#: company/views.py:237 +#: company/views.py:239 msgid "Delete Company" msgstr "" -#: company/views.py:243 +#: company/views.py:245 msgid "Company was deleted" msgstr "" -#: company/views.py:268 +#: company/views.py:270 msgid "Edit Supplier Part" msgstr "" -#: company/views.py:278 templates/js/stock.js:846 +#: company/views.py:280 templates/js/stock.js:846 msgid "Create new Supplier Part" msgstr "" -#: company/views.py:339 +#: company/views.py:341 msgid "Delete Supplier Part" msgstr "" -#: company/views.py:416 part/views.py:2366 +#: company/views.py:418 part/views.py:2356 msgid "Added new price break" msgstr "" -#: company/views.py:453 part/views.py:2411 +#: company/views.py:454 part/views.py:2400 msgid "Edit Price Break" msgstr "" -#: company/views.py:469 part/views.py:2427 +#: company/views.py:470 part/views.py:2416 msgid "Delete Price Break" msgstr "" @@ -1750,8 +1737,8 @@ msgstr "" msgid "Date order was completed" msgstr "" -#: order/models.py:185 order/models.py:267 part/views.py:1477 -#: stock/models.py:243 stock/models.py:816 +#: order/models.py:185 order/models.py:267 part/views.py:1479 +#: stock/models.py:244 stock/models.py:811 msgid "Quantity must be greater than zero" msgstr "" @@ -1789,7 +1776,7 @@ msgstr "" #: order/models.py:484 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:24 -#: stock/templates/stock/item_base.html:265 templates/js/order.js:139 +#: stock/templates/stock/item_base.html:259 templates/js/order.js:139 msgid "Purchase Order" msgstr "" @@ -1817,11 +1804,11 @@ msgstr "" msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:626 +#: order/models.py:625 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:629 +#: order/models.py:628 msgid "Enter stock allocation quantity" msgstr "" @@ -2032,7 +2019,7 @@ msgid "Sales Order Items" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: order/templates/order/sales_order_detail.html:154 stock/models.py:377 +#: order/templates/order/sales_order_detail.html:154 stock/models.py:378 #: stock/templates/stock/item_base.html:191 templates/js/build.js:402 msgid "Serial Number" msgstr "" @@ -2269,114 +2256,110 @@ msgstr "" msgid "Error reading BOM file (incorrect row size)" msgstr "" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "File Format" msgstr "" -#: part/forms.py:62 stock/forms.py:254 +#: part/forms.py:60 stock/forms.py:255 msgid "Select output file format" msgstr "" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Cascading" msgstr "" -#: part/forms.py:64 +#: part/forms.py:62 msgid "Download cascading / multi-level BOM" msgstr "" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Levels" msgstr "" -#: part/forms.py:66 +#: part/forms.py:64 msgid "Select maximum number of BOM levels to export (0 = all levels)" msgstr "" -#: part/forms.py:68 +#: part/forms.py:66 msgid "Include Parameter Data" msgstr "" -#: part/forms.py:68 +#: part/forms.py:66 msgid "Include part parameters data in exported BOM" msgstr "" -#: part/forms.py:70 +#: part/forms.py:68 msgid "Include Stock Data" msgstr "" -#: part/forms.py:70 +#: part/forms.py:68 msgid "Include part stock data in exported BOM" msgstr "" -#: part/forms.py:72 +#: part/forms.py:70 msgid "Include Supplier Data" msgstr "" -#: part/forms.py:72 +#: part/forms.py:70 msgid "Include part supplier data in exported BOM" msgstr "" -#: part/forms.py:93 part/models.py:1632 +#: part/forms.py:91 part/models.py:1644 msgid "Parent Part" msgstr "" -#: part/forms.py:94 part/templates/part/bom_duplicate.html:7 +#: part/forms.py:92 part/templates/part/bom_duplicate.html:7 msgid "Select parent part to copy BOM from" msgstr "" -#: part/forms.py:100 +#: part/forms.py:98 msgid "Clear existing BOM items" msgstr "" -#: part/forms.py:105 +#: part/forms.py:103 msgid "Confirm BOM duplication" msgstr "" -#: part/forms.py:123 +#: part/forms.py:121 msgid "Confirm that the BOM is correct" msgstr "" -#: part/forms.py:135 +#: part/forms.py:133 msgid "Select BOM file to upload" msgstr "" -#: part/forms.py:154 +#: part/forms.py:152 msgid "Related Part" msgstr "" -#: part/forms.py:173 +#: part/forms.py:171 msgid "Select part category" msgstr "" -#: part/forms.py:189 +#: part/forms.py:187 msgid "Duplicate all BOM data for this part" msgstr "" -#: part/forms.py:190 +#: part/forms.py:188 msgid "Copy BOM" msgstr "" -#: part/forms.py:195 +#: part/forms.py:193 msgid "Duplicate all parameter data for this part" msgstr "" -#: part/forms.py:196 +#: part/forms.py:194 msgid "Copy Parameters" msgstr "" -#: part/forms.py:201 +#: part/forms.py:199 msgid "Confirm part creation" msgstr "" -#: part/forms.py:298 +#: part/forms.py:296 msgid "Input quantity for price calculation" msgstr "" -#: part/forms.py:301 -msgid "Select currency for price calculation" -msgstr "" - #: part/models.py:67 msgid "Default location for parts in this category" msgstr "" @@ -2411,225 +2394,229 @@ msgstr "" msgid "Most recent serial number is" msgstr "" -#: part/models.py:540 +#: part/models.py:541 +msgid "Duplicate IPN not allowed in part settings" +msgstr "" + +#: part/models.py:552 msgid "Part must be unique for name, IPN and revision" msgstr "" -#: part/models.py:569 part/templates/part/detail.html:19 +#: part/models.py:581 part/templates/part/detail.html:19 msgid "Part name" msgstr "" -#: part/models.py:573 +#: part/models.py:585 msgid "Is this part a template part?" msgstr "" -#: part/models.py:582 +#: part/models.py:594 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:584 +#: part/models.py:596 msgid "Part description" msgstr "" -#: part/models.py:586 +#: part/models.py:598 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:591 +#: part/models.py:603 msgid "Part category" msgstr "" -#: part/models.py:593 +#: part/models.py:605 msgid "Internal Part Number" msgstr "" -#: part/models.py:595 +#: part/models.py:607 msgid "Part revision or version number" msgstr "" -#: part/models.py:609 +#: part/models.py:621 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:653 +#: part/models.py:665 msgid "Default supplier part" msgstr "" -#: part/models.py:656 +#: part/models.py:668 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:658 +#: part/models.py:670 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:662 part/templates/part/detail.html:158 +#: part/models.py:674 part/templates/part/detail.html:158 #: templates/js/table_filters.js:260 msgid "Assembly" msgstr "" -#: part/models.py:663 +#: part/models.py:675 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:669 +#: part/models.py:681 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:675 +#: part/models.py:687 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:680 +#: part/models.py:692 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:685 +#: part/models.py:697 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:689 part/templates/part/detail.html:215 +#: part/models.py:701 part/templates/part/detail.html:215 #: templates/js/table_filters.js:19 templates/js/table_filters.js:55 #: templates/js/table_filters.js:186 templates/js/table_filters.js:243 msgid "Active" msgstr "" -#: part/models.py:690 +#: part/models.py:702 msgid "Is this part active?" msgstr "" -#: part/models.py:694 part/templates/part/detail.html:138 +#: part/models.py:706 part/templates/part/detail.html:138 #: templates/js/table_filters.js:27 msgid "Virtual" msgstr "" -#: part/models.py:695 +#: part/models.py:707 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:697 +#: part/models.py:709 msgid "Part notes - supports Markdown formatting" msgstr "" -#: part/models.py:699 +#: part/models.py:711 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1505 +#: part/models.py:1517 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:1522 +#: part/models.py:1534 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:1541 templates/js/part.js:567 templates/js/stock.js:92 +#: part/models.py:1553 templates/js/part.js:567 templates/js/stock.js:92 msgid "Test Name" msgstr "" -#: part/models.py:1542 +#: part/models.py:1554 msgid "Enter a name for the test" msgstr "" -#: part/models.py:1547 +#: part/models.py:1559 msgid "Test Description" msgstr "" -#: part/models.py:1548 +#: part/models.py:1560 msgid "Enter description for this test" msgstr "" -#: part/models.py:1553 templates/js/part.js:576 +#: part/models.py:1565 templates/js/part.js:576 #: templates/js/table_filters.js:172 msgid "Required" msgstr "" -#: part/models.py:1554 +#: part/models.py:1566 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:1559 templates/js/part.js:584 +#: part/models.py:1571 templates/js/part.js:584 msgid "Requires Value" msgstr "" -#: part/models.py:1560 +#: part/models.py:1572 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:1565 templates/js/part.js:591 +#: part/models.py:1577 templates/js/part.js:591 msgid "Requires Attachment" msgstr "" -#: part/models.py:1566 +#: part/models.py:1578 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:1599 +#: part/models.py:1611 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:1604 +#: part/models.py:1616 msgid "Parameter Name" msgstr "" -#: part/models.py:1606 +#: part/models.py:1618 msgid "Parameter Units" msgstr "" -#: part/models.py:1634 +#: part/models.py:1646 msgid "Parameter Template" msgstr "" -#: part/models.py:1636 +#: part/models.py:1648 msgid "Parameter Value" msgstr "" -#: part/models.py:1673 +#: part/models.py:1685 msgid "Select parent part" msgstr "" -#: part/models.py:1681 +#: part/models.py:1693 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:1687 +#: part/models.py:1699 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:1689 +#: part/models.py:1701 msgid "This BOM item is optional" msgstr "" -#: part/models.py:1692 +#: part/models.py:1704 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:1695 +#: part/models.py:1707 msgid "BOM item reference" msgstr "" -#: part/models.py:1698 +#: part/models.py:1710 msgid "BOM item notes" msgstr "" -#: part/models.py:1700 +#: part/models.py:1712 msgid "BOM line checksum" msgstr "" -#: part/models.py:1767 part/views.py:1483 part/views.py:1535 -#: stock/models.py:233 +#: part/models.py:1779 part/views.py:1485 part/views.py:1537 +#: stock/models.py:234 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:1783 +#: part/models.py:1795 msgid "BOM Item" msgstr "" -#: part/models.py:1898 +#: part/models.py:1910 msgid "Select Related Part" msgstr "" -#: part/models.py:1930 +#: part/models.py:1942 msgid "" "Error creating relationship: check that the part is not related to itself " "and that the relationship is unique" @@ -2650,7 +2637,7 @@ msgstr "" #: part/templates/part/allocation.html:45 #: stock/templates/stock/item_base.html:8 #: stock/templates/stock/item_base.html:72 -#: stock/templates/stock/item_base.html:273 +#: stock/templates/stock/item_base.html:274 #: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:724 #: templates/js/stock.js:695 templates/js/stock.js:944 msgid "Stock Item" @@ -2717,7 +2704,7 @@ msgstr "" msgid "Validate" msgstr "" -#: part/templates/part/bom.html:62 part/views.py:1774 +#: part/templates/part/bom.html:62 part/views.py:1776 msgid "Export Bill of Materials" msgstr "" @@ -2813,7 +2800,7 @@ msgstr "" msgid "All parts" msgstr "" -#: part/templates/part/category.html:24 part/views.py:2177 +#: part/templates/part/category.html:24 part/views.py:2167 msgid "Create new part category" msgstr "" @@ -2967,7 +2954,7 @@ msgstr "" msgid "Part is not a virtual part" msgstr "" -#: part/templates/part/detail.html:148 stock/forms.py:248 +#: part/templates/part/detail.html:148 stock/forms.py:249 #: templates/js/table_filters.js:23 templates/js/table_filters.js:248 msgid "Template" msgstr "" @@ -3036,17 +3023,17 @@ msgstr "" msgid "Add new parameter" msgstr "" -#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:35 +#: part/templates/part/params.html:15 templates/InvenTree/settings/part.html:37 msgid "New Parameter" msgstr "" -#: part/templates/part/params.html:25 stock/models.py:1415 +#: part/templates/part/params.html:25 stock/models.py:1419 #: templates/js/stock.js:112 msgid "Value" msgstr "" #: part/templates/part/params.html:41 part/templates/part/related.html:41 -#: part/templates/part/supplier.html:19 users/models.py:147 +#: part/templates/part/supplier.html:19 users/models.py:148 msgid "Delete" msgstr "" @@ -3226,7 +3213,7 @@ msgstr "" msgid "Used In" msgstr "" -#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:317 +#: part/templates/part/tabs.html:61 stock/templates/stock/item_base.html:318 msgid "Tests" msgstr "" @@ -3254,208 +3241,208 @@ msgstr "" msgid "New Variant" msgstr "" -#: part/views.py:80 +#: part/views.py:82 msgid "Add Related Part" msgstr "" -#: part/views.py:136 +#: part/views.py:138 msgid "Delete Related Part" msgstr "" -#: part/views.py:148 +#: part/views.py:150 msgid "Add part attachment" msgstr "" -#: part/views.py:203 templates/attachment_table.html:34 +#: part/views.py:205 templates/attachment_table.html:34 msgid "Edit attachment" msgstr "" -#: part/views.py:209 +#: part/views.py:211 msgid "Part attachment updated" msgstr "" -#: part/views.py:224 +#: part/views.py:226 msgid "Delete Part Attachment" msgstr "" -#: part/views.py:232 +#: part/views.py:234 msgid "Deleted part attachment" msgstr "" -#: part/views.py:241 +#: part/views.py:243 msgid "Create Test Template" msgstr "" -#: part/views.py:270 +#: part/views.py:272 msgid "Edit Test Template" msgstr "" -#: part/views.py:286 +#: part/views.py:288 msgid "Delete Test Template" msgstr "" -#: part/views.py:295 +#: part/views.py:297 msgid "Set Part Category" msgstr "" -#: part/views.py:345 +#: part/views.py:347 #, python-brace-format msgid "Set category for {n} parts" msgstr "" -#: part/views.py:380 +#: part/views.py:382 msgid "Create Variant" msgstr "" -#: part/views.py:462 +#: part/views.py:464 msgid "Duplicate Part" msgstr "" -#: part/views.py:469 +#: part/views.py:471 msgid "Copied part" msgstr "" -#: part/views.py:523 part/views.py:653 +#: part/views.py:525 part/views.py:655 msgid "Possible matches exist - confirm creation of new part" msgstr "" -#: part/views.py:588 templates/js/stock.js:840 +#: part/views.py:590 templates/js/stock.js:840 msgid "Create New Part" msgstr "" -#: part/views.py:595 +#: part/views.py:597 msgid "Created new part" msgstr "" -#: part/views.py:811 +#: part/views.py:813 msgid "Part QR Code" msgstr "" -#: part/views.py:830 +#: part/views.py:832 msgid "Upload Part Image" msgstr "" -#: part/views.py:838 part/views.py:875 +#: part/views.py:840 part/views.py:877 msgid "Updated part image" msgstr "" -#: part/views.py:847 +#: part/views.py:849 msgid "Select Part Image" msgstr "" -#: part/views.py:878 +#: part/views.py:880 msgid "Part image not found" msgstr "" -#: part/views.py:889 +#: part/views.py:891 msgid "Edit Part Properties" msgstr "" -#: part/views.py:916 +#: part/views.py:918 msgid "Duplicate BOM" msgstr "" -#: part/views.py:947 +#: part/views.py:949 msgid "Confirm duplication of BOM from parent" msgstr "" -#: part/views.py:968 +#: part/views.py:970 msgid "Validate BOM" msgstr "" -#: part/views.py:991 +#: part/views.py:993 msgid "Confirm that the BOM is valid" msgstr "" -#: part/views.py:1002 +#: part/views.py:1004 msgid "Validated Bill of Materials" msgstr "" -#: part/views.py:1136 +#: part/views.py:1138 msgid "No BOM file provided" msgstr "" -#: part/views.py:1486 +#: part/views.py:1488 msgid "Enter a valid quantity" msgstr "" -#: part/views.py:1511 part/views.py:1514 +#: part/views.py:1513 part/views.py:1516 msgid "Select valid part" msgstr "" -#: part/views.py:1520 +#: part/views.py:1522 msgid "Duplicate part selected" msgstr "" -#: part/views.py:1558 +#: part/views.py:1560 msgid "Select a part" msgstr "" -#: part/views.py:1564 +#: part/views.py:1566 msgid "Selected part creates a circular BOM" msgstr "" -#: part/views.py:1568 +#: part/views.py:1570 msgid "Specify quantity" msgstr "" -#: part/views.py:1824 +#: part/views.py:1826 msgid "Confirm Part Deletion" msgstr "" -#: part/views.py:1833 +#: part/views.py:1835 msgid "Part was deleted" msgstr "" -#: part/views.py:1842 +#: part/views.py:1844 msgid "Part Pricing" msgstr "" -#: part/views.py:1968 +#: part/views.py:1958 msgid "Create Part Parameter Template" msgstr "" -#: part/views.py:1978 +#: part/views.py:1968 msgid "Edit Part Parameter Template" msgstr "" -#: part/views.py:1987 +#: part/views.py:1977 msgid "Delete Part Parameter Template" msgstr "" -#: part/views.py:1997 +#: part/views.py:1987 msgid "Create Part Parameter" msgstr "" -#: part/views.py:2049 +#: part/views.py:2039 msgid "Edit Part Parameter" msgstr "" -#: part/views.py:2065 +#: part/views.py:2055 msgid "Delete Part Parameter" msgstr "" -#: part/views.py:2124 +#: part/views.py:2114 msgid "Edit Part Category" msgstr "" -#: part/views.py:2161 +#: part/views.py:2151 msgid "Delete Part Category" msgstr "" -#: part/views.py:2169 +#: part/views.py:2159 msgid "Part category was deleted" msgstr "" -#: part/views.py:2232 +#: part/views.py:2222 msgid "Create BOM Item" msgstr "" -#: part/views.py:2300 +#: part/views.py:2290 msgid "Edit BOM item" msgstr "" -#: part/views.py:2350 +#: part/views.py:2340 msgid "Confim BOM item deletion" msgstr "" @@ -3491,291 +3478,295 @@ msgstr "" msgid "Enter unique serial numbers (or leave blank)" msgstr "" -#: stock/forms.py:191 +#: stock/forms.py:192 msgid "Label" msgstr "" -#: stock/forms.py:192 stock/forms.py:248 +#: stock/forms.py:193 stock/forms.py:249 msgid "Select test report template" msgstr "" -#: stock/forms.py:256 +#: stock/forms.py:257 msgid "Include stock items in sub locations" msgstr "" -#: stock/forms.py:291 +#: stock/forms.py:292 msgid "Stock item to install" msgstr "" -#: stock/forms.py:298 +#: stock/forms.py:299 msgid "Stock quantity to assign" msgstr "" -#: stock/forms.py:326 +#: stock/forms.py:327 msgid "Must not exceed available quantity" msgstr "" -#: stock/forms.py:336 +#: stock/forms.py:337 msgid "Destination location for uninstalled items" msgstr "" -#: stock/forms.py:338 +#: stock/forms.py:339 msgid "Add transaction note (optional)" msgstr "" -#: stock/forms.py:340 +#: stock/forms.py:341 msgid "Confirm uninstall" msgstr "" -#: stock/forms.py:340 +#: stock/forms.py:341 msgid "Confirm removal of installed stock items" msgstr "" -#: stock/forms.py:364 +#: stock/forms.py:365 msgid "Destination stock location" msgstr "" -#: stock/forms.py:366 +#: stock/forms.py:367 msgid "Add note (required)" msgstr "" -#: stock/forms.py:370 stock/views.py:916 stock/views.py:1114 +#: stock/forms.py:371 stock/views.py:916 stock/views.py:1114 msgid "Confirm stock adjustment" msgstr "" -#: stock/forms.py:370 +#: stock/forms.py:371 msgid "Confirm movement of stock items" msgstr "" -#: stock/forms.py:372 +#: stock/forms.py:373 msgid "Set Default Location" msgstr "" -#: stock/forms.py:372 +#: stock/forms.py:373 msgid "Set the destination as the default location for selected parts" msgstr "" -#: stock/models.py:178 +#: stock/models.py:179 msgid "Created stock item" msgstr "" -#: stock/models.py:214 +#: stock/models.py:215 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:250 +#: stock/models.py:251 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:260 stock/models.py:269 +#: stock/models.py:261 stock/models.py:270 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:261 +#: stock/models.py:262 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:283 +#: stock/models.py:284 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:289 +#: stock/models.py:290 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:296 +#: stock/models.py:297 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:329 +#: stock/models.py:330 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:338 +#: stock/models.py:339 msgid "Base part" msgstr "" -#: stock/models.py:347 +#: stock/models.py:348 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:352 stock/templates/stock/stock_app_base.html:7 +#: stock/models.py:353 stock/templates/stock/stock_app_base.html:7 msgid "Stock Location" msgstr "" -#: stock/models.py:355 +#: stock/models.py:356 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:360 stock/templates/stock/item_base.html:212 +#: stock/models.py:361 stock/templates/stock/item_base.html:212 msgid "Installed In" msgstr "" -#: stock/models.py:363 +#: stock/models.py:364 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:379 +#: stock/models.py:380 msgid "Serial number for this item" msgstr "" -#: stock/models.py:391 +#: stock/models.py:392 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:395 +#: stock/models.py:396 msgid "Stock Quantity" msgstr "" -#: stock/models.py:404 +#: stock/models.py:405 msgid "Source Build" msgstr "" -#: stock/models.py:406 +#: stock/models.py:407 msgid "Build for this stock item" msgstr "" -#: stock/models.py:417 +#: stock/models.py:418 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:420 +#: stock/models.py:421 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:426 +#: stock/models.py:427 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:433 -msgid "Destination Build Order" -msgstr "" - -#: stock/models.py:446 +#: stock/models.py:439 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:456 stock/templates/stock/item_notes.html:14 +#: stock/models.py:449 stock/templates/stock/item_notes.html:14 #: stock/templates/stock/item_notes.html:30 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:507 -msgid "Assigned to Customer" +#: stock/models.py:457 stock/templates/stock/item_base.html:266 +msgid "Purchase Price" +msgstr "" + +#: stock/models.py:458 +msgid "Single unit purchase price at time of purchase" msgstr "" #: stock/models.py:509 +msgid "Assigned to Customer" +msgstr "" + +#: stock/models.py:511 msgid "Manually assigned to customer" msgstr "" -#: stock/models.py:522 +#: stock/models.py:524 msgid "Returned from customer" msgstr "" -#: stock/models.py:524 +#: stock/models.py:526 msgid "Returned to location" msgstr "" -#: stock/models.py:652 +#: stock/models.py:651 msgid "Installed into stock item" msgstr "" -#: stock/models.py:660 +#: stock/models.py:659 msgid "Installed stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:683 msgid "Uninstalled stock item" msgstr "" -#: stock/models.py:703 +#: stock/models.py:702 msgid "Uninstalled into location" msgstr "" -#: stock/models.py:807 +#: stock/models.py:802 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:813 +#: stock/models.py:808 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:819 +#: stock/models.py:814 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:822 +#: stock/models.py:817 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:825 +#: stock/models.py:820 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:857 +#: stock/models.py:852 msgid "Add serial number" msgstr "" -#: stock/models.py:860 +#: stock/models.py:855 #, python-brace-format msgid "Serialized {n} items" msgstr "" -#: stock/models.py:971 +#: stock/models.py:966 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1316 +#: stock/models.py:1320 msgid "Tracking entry title" msgstr "" -#: stock/models.py:1318 +#: stock/models.py:1322 msgid "Entry notes" msgstr "" -#: stock/models.py:1320 +#: stock/models.py:1324 msgid "Link to external page for further information" msgstr "" -#: stock/models.py:1380 +#: stock/models.py:1384 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:1386 +#: stock/models.py:1390 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:1403 +#: stock/models.py:1407 msgid "Test" msgstr "" -#: stock/models.py:1404 +#: stock/models.py:1408 msgid "Test name" msgstr "" -#: stock/models.py:1409 +#: stock/models.py:1413 msgid "Result" msgstr "" -#: stock/models.py:1410 templates/js/table_filters.js:162 +#: stock/models.py:1414 templates/js/table_filters.js:162 msgid "Test result" msgstr "" -#: stock/models.py:1416 +#: stock/models.py:1420 msgid "Test output value" msgstr "" -#: stock/models.py:1422 +#: stock/models.py:1426 msgid "Attachment" msgstr "" -#: stock/models.py:1423 +#: stock/models.py:1427 msgid "Test result attachment" msgstr "" -#: stock/models.py:1429 +#: stock/models.py:1433 msgid "Test notes" msgstr "" @@ -3905,32 +3896,32 @@ msgstr "" msgid "Stock Item Details" msgstr "" -#: stock/templates/stock/item_base.html:237 templates/js/build.js:426 +#: stock/templates/stock/item_base.html:231 templates/js/build.js:426 msgid "No location set" msgstr "" -#: stock/templates/stock/item_base.html:244 +#: stock/templates/stock/item_base.html:238 msgid "Barcode Identifier" msgstr "" -#: stock/templates/stock/item_base.html:258 templates/js/build.js:626 +#: stock/templates/stock/item_base.html:252 templates/js/build.js:626 #: templates/navbar.html:25 msgid "Build" msgstr "" -#: stock/templates/stock/item_base.html:272 +#: stock/templates/stock/item_base.html:273 msgid "Parent Item" msgstr "" -#: stock/templates/stock/item_base.html:297 +#: stock/templates/stock/item_base.html:298 msgid "Last Updated" msgstr "" -#: stock/templates/stock/item_base.html:302 +#: stock/templates/stock/item_base.html:303 msgid "Last Stocktake" msgstr "" -#: stock/templates/stock/item_base.html:306 +#: stock/templates/stock/item_base.html:307 msgid "No stocktake performed" msgstr "" @@ -4369,18 +4360,6 @@ msgstr "" msgid "Build Order Settings" msgstr "" -#: templates/InvenTree/settings/currency.html:5 -msgid "General Settings" -msgstr "" - -#: templates/InvenTree/settings/currency.html:14 -msgid "Currencies" -msgstr "" - -#: templates/InvenTree/settings/currency.html:18 -msgid "New Currency" -msgstr "" - #: templates/InvenTree/settings/global.html:10 msgid "Global InvenTree Settings" msgstr "" @@ -4393,19 +4372,19 @@ msgstr "" msgid "Part Options" msgstr "" -#: templates/InvenTree/settings/part.html:31 +#: templates/InvenTree/settings/part.html:33 msgid "Part Parameter Templates" msgstr "" -#: templates/InvenTree/settings/part.html:52 +#: templates/InvenTree/settings/part.html:54 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/part.html:72 +#: templates/InvenTree/settings/part.html:74 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/part.html:73 +#: templates/InvenTree/settings/part.html:75 msgid "Delete Template" msgstr "" @@ -4455,10 +4434,6 @@ msgstr "" msgid "Global" msgstr "" -#: templates/InvenTree/settings/tabs.html:19 -msgid "Currency" -msgstr "" - #: templates/InvenTree/settings/theme.html:10 msgid "Theme Settings" msgstr "" @@ -5188,38 +5163,38 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:130 +#: users/models.py:131 msgid "Permission set" msgstr "" -#: users/models.py:138 +#: users/models.py:139 msgid "Group" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "View" msgstr "" -#: users/models.py:141 +#: users/models.py:142 msgid "Permission to view items" msgstr "" -#: users/models.py:143 +#: users/models.py:144 msgid "Add" msgstr "" -#: users/models.py:143 +#: users/models.py:144 msgid "Permission to add items" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Change" msgstr "" -#: users/models.py:145 +#: users/models.py:146 msgid "Permissions to edit items" msgstr "" -#: users/models.py:147 +#: users/models.py:148 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/users/models.py b/InvenTree/users/models.py index a5b9021807..bede8b59db 100644 --- a/InvenTree/users/models.py +++ b/InvenTree/users/models.py @@ -108,6 +108,8 @@ class RuleSet(models.Model): 'report_reportasset', 'report_testreport', 'part_partstar', + 'exchange_rate', + 'exchange_exchangebackend', ] RULE_OPTIONS = [