From 47c98db8a19038cea66ac349c76b104ecc8c853c Mon Sep 17 00:00:00 2001 From: Matthias Date: Thu, 11 Mar 2021 12:44:28 +0100 Subject: [PATCH 01/82] unified translation scheme --- InvenTree/locale/de/LC_MESSAGES/django.mo | Bin 79782 -> 101003 bytes InvenTree/locale/de/LC_MESSAGES/django.po | 2134 ++++++++------------- 2 files changed, 759 insertions(+), 1375 deletions(-) diff --git a/InvenTree/locale/de/LC_MESSAGES/django.mo b/InvenTree/locale/de/LC_MESSAGES/django.mo index 742a6d8242c9e6b11102fc352dfaf41afeab75cd..aa43358545702edc9a1c760892e91c36d237718e 100644 GIT binary patch literal 101003 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 NMO?Ar=x&gl{t1INp>6;G diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 046737f0e6..f00b88ad37 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-03-09 11:11+0100\n" -"PO-Revision-Date: 2021-03-06 15:16+0100\n" -"Last-Translator: Andreas Kaiser \n" +"PO-Revision-Date: 2021-03-11 12:00+0100\n" +"Last-Translator: Andreas Kaiser , Matthias MAIR\n" "Language-Team: C \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 2.3\n" +"X-Generator: Poedit 2.4.2\n" #: InvenTree/api.py:62 msgid "API endpoint not found" @@ -43,7 +43,7 @@ msgstr "Löschung von Position bestätigen" #: InvenTree/forms.py:158 msgid "Enter new password" -msgstr "neues Passwort eingeben" +msgstr "Neues Passwort eingeben" #: InvenTree/forms.py:165 msgid "Confirm new password" @@ -88,9 +88,7 @@ msgstr "Keine Seriennummern gefunden" #: InvenTree/helpers.py:412 #, python-brace-format msgid "Number of unique serial number ({s}) must match quantity ({q})" -msgstr "" -"Anzahl der eindeutigen Seriennummern ({s}) muss mit der Anzahl ({q}) " -"übereinstimmen" +msgstr "Anzahl der eindeutigen Seriennummern ({s}) muss mit der Anzahl ({q}) übereinstimmen" #: InvenTree/models.py:60 msgid "Select file to attach" @@ -277,27 +275,27 @@ msgstr "" #: barcodes/api.py:160 msgid "No matching stock item found" -msgstr "Keine passende Lagerobjekt gefunden" +msgstr "Keine passende BestandsObjekt gefunden" #: barcodes/api.py:190 msgid "Barcode already matches StockItem object" -msgstr "" +msgstr "Barcode entspricht bereits BestandsObjekt" #: barcodes/api.py:194 msgid "Barcode already matches StockLocation object" -msgstr "" +msgstr "Barcode entspricht bereits Bestandslagerort" #: barcodes/api.py:198 msgid "Barcode already matches Part object" -msgstr "" +msgstr "Barcode entspricht bereits Teil" #: barcodes/api.py:204 barcodes/api.py:216 msgid "Barcode hash already matches StockItem object" -msgstr "" +msgstr "Barcode ist bereits BestandsObjekt zugeordnet" #: barcodes/api.py:222 msgid "Barcode associated with StockItem" -msgstr "Barcode zugeordnet zu Lagerobjekt" +msgstr "Barcode zugeordnet zu BestandsObjekt" #: build/forms.py:34 msgid "Build Order reference" @@ -340,7 +338,7 @@ msgstr "Anzahl" #: build/forms.py:86 msgid "Enter quantity for build output" -msgstr "Menge für den Bau angeben" +msgstr "Menge für den Bau-Ausgabe angeben" #: build/forms.py:90 stock/forms.py:117 msgid "Serial numbers" @@ -356,15 +354,15 @@ msgstr "Anlage Baufertigstellung bestätigen" #: build/forms.py:118 msgid "Confirm deletion of build output" -msgstr "löschen der Baufertigstellung bestätigen" +msgstr "Löschen des Endprodukt bestätigen" #: build/forms.py:139 msgid "Confirm unallocation of stock" -msgstr "Zuweisungsaufhebung bestätigen" +msgstr "Aufhebung der BestandsZuordnung bestätigen" #: build/forms.py:163 msgid "Confirm stock allocation" -msgstr "Lagerbestandszuordnung bestätigen" +msgstr "Bestandszuordnung bestätigen" #: build/forms.py:186 msgid "Mark build as complete" @@ -372,11 +370,11 @@ msgstr "Bau als vollständig markieren" #: build/forms.py:210 msgid "Location of completed parts" -msgstr "Standort der Fertigteile" +msgstr "Lagerort der fertigen Teile" #: build/forms.py:215 msgid "Confirm completion with incomplete stock allocation" -msgstr "Fertigstellung mit nicht kompletter Lagerbestandszuordnung bestätigen" +msgstr "Fertigstellung mit nicht kompletter Bestandszuordnung bestätigen" #: build/forms.py:218 msgid "Confirm build completion" @@ -388,7 +386,7 @@ msgstr "Bauabbruch bestätigen" #: build/forms.py:252 msgid "Select quantity of stock to allocate" -msgstr "Menge der Lagerobjekte für Zuordnung auswählen" +msgstr "Menge der BestandsObjekt für Zuordnung auswählen" #: build/models.py:65 build/templates/build/build_base.html:8 #: build/templates/build/build_base.html:35 @@ -448,21 +446,15 @@ msgid "BuildOrder to which this build is allocated" msgstr "Bauauftrag, zu dem dieser Bau zugwiesen ist" #: build/models.py:152 build/templates/build/auto_allocate.html:16 -#: build/templates/build/build_base.html:86 -#: build/templates/build/detail.html:26 order/models.py:652 +#: build/templates/build/build_base.html:86 build/templates/build/detail.html:26 order/models.py:652 #: order/templates/order/order_wizard/select_parts.html:30 -#: order/templates/order/purchase_order_detail.html:156 -#: order/templates/order/receive_parts.html:19 part/models.py:320 -#: part/templates/part/part_app_base.html:7 part/templates/part/related.html:29 -#: part/templates/part/set_category.html:13 -#: part/templates/part/subcategories.html:17 -#: report/templates/report/inventree_build_order_base.html:113 -#: templates/InvenTree/search.html:111 templates/InvenTree/search.html:194 -#: templates/js/barcode.js:362 templates/js/bom.js:163 -#: templates/js/build.js:681 templates/js/build.js:921 -#: templates/js/company.js:138 templates/js/part.js:232 -#: templates/js/part.js:337 templates/js/stock.js:524 -#: templates/js/stock.js:1262 +#: order/templates/order/purchase_order_detail.html:156 order/templates/order/receive_parts.html:19 +#: part/models.py:320 part/templates/part/part_app_base.html:7 part/templates/part/related.html:29 +#: part/templates/part/set_category.html:13 part/templates/part/subcategories.html:17 +#: report/templates/report/inventree_build_order_base.html:113 templates/InvenTree/search.html:111 +#: templates/InvenTree/search.html:194 templates/js/barcode.js:362 templates/js/bom.js:163 +#: templates/js/build.js:681 templates/js/build.js:921 templates/js/company.js:138 +#: templates/js/part.js:232 templates/js/part.js:337 templates/js/stock.js:524 templates/js/stock.js:1262 msgid "Part" msgstr "Teil" @@ -472,7 +464,7 @@ msgstr "Teil für den Bau wählen" #: build/models.py:165 msgid "Sales Order Reference" -msgstr "VK-Auftrag Referenz" +msgstr "Auftrag Referenz" #: build/models.py:169 msgid "SalesOrder to which this build is allocated" @@ -480,15 +472,12 @@ msgstr "VK-Auftrag, die diesem Bau zugewiesen ist" #: build/models.py:174 msgid "Source Location" -msgstr "Quell-Standort" +msgstr "Quell-Lagerort" #: build/models.py:178 -msgid "" -"Select location to take stock from for this build (leave blank to take from " -"any stock location)" +msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -"Lager-Entnahmestandort für diesen Bau wählen (oder leer lassen für einen " -"beliebigen Lager-Standort)" +"Entnahme-Lagerort für diesen Bau wählen (oder leer lassen für einen beliebigen Lagerort)" #: build/models.py:183 msgid "Destination Location" @@ -504,7 +493,7 @@ msgstr "Bau-Anzahl" #: build/models.py:194 msgid "Number of stock items to build" -msgstr "Anzahl der zu bauenden Lagerobjekte" +msgstr "Anzahl der zu bauenden BestandsObjekt" #: build/models.py:198 msgid "Completed items" @@ -512,7 +501,7 @@ msgstr "Fertiggestellte Teile" #: build/models.py:200 msgid "Number of stock items which have been completed" -msgstr "Anzahl der fertigen Lagerobjekte" +msgstr "Anzahl der fertigen BestandsObjekte" #: build/models.py:204 part/templates/part/part_base.html:159 msgid "Build Status" @@ -524,11 +513,11 @@ msgstr "Bau-Statuscode" #: build/models.py:212 stock/models.py:429 msgid "Batch Code" -msgstr "Losnummer/Chargennr" +msgstr "Losnummer" #: build/models.py:216 msgid "Batch code for this build output" -msgstr "Chargennummer für diese Bau-Ausgabe" +msgstr "Losnummer für dieses Endprodukt" #: build/models.py:223 order/models.py:437 msgid "Target completion date" @@ -540,13 +529,12 @@ msgstr "Nutzer der diesen Bauauftrag erstellt hat" #: build/models.py:248 msgid "User responsible for this build order" -msgstr "Nutzer der für diesen Bauauftrag zuständig hat" +msgstr "Nutzer der für diesen Bauauftrag zuständig ist" #: build/models.py:253 build/templates/build/detail.html:91 #: company/templates/company/supplier_part_base.html:77 -#: company/templates/company/supplier_part_detail.html:28 -#: part/templates/part/detail.html:83 part/templates/part/part_base.html:100 -#: stock/models.py:423 stock/templates/stock/item_base.html:324 +#: company/templates/company/supplier_part_detail.html:28 part/templates/part/detail.html:83 +#: part/templates/part/part_base.html:100 stock/models.py:423 stock/templates/stock/item_base.html:324 msgid "External Link" msgstr "Externer Link" @@ -554,20 +542,14 @@ msgstr "Externer Link" msgid "Link to external URL" msgstr "Link zu einer externen URL" -#: build/models.py:258 build/templates/build/navbar.html:59 -#: company/models.py:366 company/templates/company/navbar.html:59 -#: company/templates/company/navbar.html:62 -#: order/templates/order/po_navbar.html:29 -#: order/templates/order/po_navbar.html:32 -#: order/templates/order/purchase_order_detail.html:227 -#: order/templates/order/so_navbar.html:33 -#: order/templates/order/so_navbar.html:36 part/models.py:869 -#: part/templates/part/navbar.html:122 -#: report/templates/report/inventree_build_order_base.html:176 -#: stock/forms.py:316 stock/forms.py:348 stock/forms.py:376 stock/models.py:495 -#: stock/models.py:1663 stock/templates/stock/navbar.html:57 -#: templates/js/barcode.js:37 templates/js/bom.js:329 templates/js/stock.js:128 -#: templates/js/stock.js:667 +#: build/models.py:258 build/templates/build/navbar.html:59 company/models.py:366 +#: company/templates/company/navbar.html:59 company/templates/company/navbar.html:62 +#: order/templates/order/po_navbar.html:29 order/templates/order/po_navbar.html:32 +#: order/templates/order/purchase_order_detail.html:227 order/templates/order/so_navbar.html:33 +#: order/templates/order/so_navbar.html:36 part/models.py:869 part/templates/part/navbar.html:122 +#: report/templates/report/inventree_build_order_base.html:176 stock/forms.py:316 stock/forms.py:348 +#: stock/forms.py:376 stock/models.py:495 stock/models.py:1663 stock/templates/stock/navbar.html:57 +#: templates/js/barcode.js:37 templates/js/bom.js:329 templates/js/stock.js:128 templates/js/stock.js:667 msgid "Notes" msgstr "Notizen" @@ -584,42 +566,36 @@ msgid "Build output is already completed" msgstr "Endprodukt bereits hergstellt" #: build/models.py:676 -#, fuzzy -#| msgid "Quantity does not match serial numbers" msgid "Build output does not match Build Order" -msgstr "Anzahl stimmt nicht mit den Seriennummern überein" +msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein" #: build/models.py:751 -#, fuzzy -#| msgid "Complete Build" msgid "Completed build output" -msgstr "Bau fertigstellen" +msgstr "Endprodukt fertigstellen" #: build/models.py:993 msgid "BuildItem must be unique for build, stock_item and install_into" msgstr "" #: build/models.py:1015 -#, fuzzy -#| msgid "Allocate Stock to Build" msgid "Build item must specify a build output" -msgstr "Lagerbestand dem Bau zuweisen" +msgstr "Bauauftrags-Objekt muss einem Endprodukt zugewiesen sein" #: build/models.py:1020 #, python-brace-format msgid "Selected stock item not found in BOM for part '{p}'" -msgstr "Ausgewähltes Lagerobjekt nicht in BOM für Teil '{p}' gefunden" +msgstr "Ausgewähltes BestandsObjekt nicht Stückliste für Teil '{p}' gefunden" #: build/models.py:1024 #, python-brace-format msgid "Allocated quantity ({n}) must not exceed available quantity ({q})" msgstr "" -"Reserviermenge ({n}) muss kleiner Bestandsmenge ({q}) sein. Zugewiesene " -"Anzahl ({n}) darf nicht die verfügbare ({q}) Anzahl überschreiten" +"Reserviermenge ({n}) muss kleiner Bestandsmenge ({q}) sein. Zugewiesene Anzahl ({n}) darf nicht die " +"verfügbare ({q}) Anzahl überschreiten" #: build/models.py:1031 order/models.py:736 msgid "StockItem is over-allocated" -msgstr "Zu viele Lagerobjekte zugewiesen" +msgstr "Zu viele BestandsObjekt zugewiesen" #: build/models.py:1035 order/models.py:739 msgid "Allocation quantity must be greater than zero" @@ -634,83 +610,64 @@ msgid "Build to allocate parts" msgstr "Bau starten um Teile zuzuweisen" #: build/models.py:1086 -#, fuzzy -#| msgid "Remove stock" msgid "Source stock item" -msgstr "Bestand entfernen" +msgstr "Quell-BestandsObjekt" #: build/models.py:1098 msgid "Stock quantity to allocate to build" -msgstr "Lagerobjekt-Anzahl dem Bau zuweisen" +msgstr "BestandsObjekt-Anzahl dem Bau zuweisen" #: build/models.py:1106 -#, fuzzy -#| msgid "Destination stock location" msgid "Destination stock item" -msgstr "Ziel-Lagerbestand" +msgstr "Ziel-BestandsObjekt" #: build/templates/build/allocate.html:15 -#, fuzzy -#| msgid "Complete Build" msgid "Incomplete Build Ouputs" -msgstr "Bau fertigstellen" +msgstr "unfertige Endpordukte" #: build/templates/build/allocate.html:21 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build order has been completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag ist vollständig" #: build/templates/build/allocate.html:26 -#, fuzzy -#| msgid "Created new build" msgid "Create new build output" -msgstr "Neuen Bau angelegt" +msgstr "Neues Endprodukt anlegen" #: build/templates/build/allocate.html:27 -#, fuzzy -#| msgid "Create New Part" msgid "Create New Output" -msgstr "Neues Teil anlegen" +msgstr "Neues Endprodukt anlegen" #: build/templates/build/allocate.html:30 -#, fuzzy -#| msgid "Order part" msgid "Order required parts" -msgstr "Teil bestellen" +msgstr "benötigte Teile bestellen" -#: build/templates/build/allocate.html:31 -#: company/templates/company/detail_part.html:31 order/views.py:791 +#: build/templates/build/allocate.html:31 company/templates/company/detail_part.html:31 order/views.py:791 #: part/templates/part/category.html:127 msgid "Order Parts" msgstr "Teile bestellen" #: build/templates/build/allocate.html:34 templates/js/build.js:590 -#, fuzzy msgid "Unallocate stock" -msgstr "Zuweisung aufheben" +msgstr "Bestandszuordnung aufheben" #: build/templates/build/allocate.html:35 build/views.py:338 build/views.py:784 msgid "Unallocate Stock" -msgstr "Resrvierung aufheben" +msgstr "Bestandszuordnung aufheben" #: build/templates/build/allocate.html:49 -#, fuzzy -#| msgid "Created new build" msgid "Create a new build output" -msgstr "Neuen Bau angelegt" +msgstr "Neues Endprodukt anlegen" #: build/templates/build/allocate.html:50 msgid "No incomplete build outputs remain." -msgstr "Keine unfertigen Bauobjekte verbleiben." +msgstr "Keine unfertigen Endprodukte verbleiben." #: build/templates/build/allocate.html:51 msgid "Create a new build output using the button above" -msgstr "" +msgstr "Neues Endprodukt mit der Schaltfläche obehalb anlegen" -#: build/templates/build/attachments.html:12 -#: build/templates/build/navbar.html:49 build/templates/build/navbar.html:52 -#: order/templates/order/po_navbar.html:26 +#: build/templates/build/attachments.html:12 build/templates/build/navbar.html:49 +#: build/templates/build/navbar.html:52 order/templates/order/po_navbar.html:26 #: order/templates/order/so_navbar.html:29 part/templates/part/navbar.html:113 #: part/templates/part/navbar.html:116 stock/templates/stock/navbar.html:47 #: stock/templates/stock/navbar.html:50 @@ -722,60 +679,44 @@ msgid "Automatically Allocate Stock" msgstr "Lagerbestand automatisch zuweisen" #: build/templates/build/auto_allocate.html:10 -#, fuzzy -#| msgid "Stock Item to allocate to build" -msgid "" -"The following stock items will be allocated to the specified build output" -msgstr "Lagerobjekt dem Bau zuweisen" +msgid "The following stock items will be allocated to the specified build output" +msgstr "Die folgenden BestandsObjekte werden den ausgewählten Endprodukten zugeordnet" -#: build/templates/build/auto_allocate.html:18 stock/forms.py:346 -#: stock/templates/stock/item_base.html:264 -#: stock/templates/stock/stock_adjust.html:17 -#: templates/InvenTree/search.html:244 templates/js/barcode.js:363 -#: templates/js/barcode.js:531 templates/js/build.js:434 +#: build/templates/build/auto_allocate.html:18 stock/forms.py:346 stock/templates/stock/item_base.html:264 +#: stock/templates/stock/stock_adjust.html:17 templates/InvenTree/search.html:244 +#: templates/js/barcode.js:363 templates/js/barcode.js:531 templates/js/build.js:434 #: templates/js/stock.js:637 msgid "Location" -msgstr "Standort" +msgstr "Lagerort" #: build/templates/build/auto_allocate.html:37 -#, fuzzy -#| msgid "No stock items found that can be allocated to this build" msgid "No stock items found that can be automatically allocated to this build" -msgstr "Keine Lagerobjekt gefunden, die diesem Bau zugewiesen werden können" +msgstr "Keine BestandsObjekt gefunden, die diesem Endprodukt automatisch zugewiesen werden können" #: build/templates/build/auto_allocate.html:39 msgid "Stock items will have to be manually allocated" -msgstr "Lagerobjekt werden manuell zugewiesen" +msgstr "BestandsObjekte werden manuell zugewiesen werden müssen" #: build/templates/build/build_base.html:14 msgid "This Build Order is allocated to Sales Order" -msgstr "Dieser Bau ist dem Verkaufsauftrag zugeordnet" +msgstr "Dieser Bauauftrag ist einem Auftrag zugeordnet" #: build/templates/build/build_base.html:19 -#, fuzzy -#| msgid "This build is a child of Build" msgid "This Build Order is a child of Build Order" -msgstr "Dieser Bau ist Kind von Bau" +msgstr "Dieser Bauauftrag ist einem Bauauftrag untergeordnet" -#: build/templates/build/build_base.html:37 -#: company/templates/company/company_base.html:27 -#: company/templates/company/supplier_part_base.html:25 -#: order/templates/order/order_base.html:26 -#: order/templates/order/sales_order_base.html:35 -#: part/templates/part/category.html:14 part/templates/part/part_base.html:28 -#: stock/templates/stock/item_base.html:114 +#: build/templates/build/build_base.html:37 company/templates/company/company_base.html:27 +#: company/templates/company/supplier_part_base.html:25 order/templates/order/order_base.html:26 +#: order/templates/order/sales_order_base.html:35 part/templates/part/category.html:14 +#: part/templates/part/part_base.html:28 stock/templates/stock/item_base.html:114 #: stock/templates/stock/location.html:24 msgid "Admin view" msgstr "Admin" -#: build/templates/build/build_base.html:43 -#: build/templates/build/build_base.html:108 -#: order/templates/order/order_base.html:32 -#: order/templates/order/order_base.html:83 -#: order/templates/order/sales_order_base.html:41 -#: order/templates/order/sales_order_base.html:83 -#: templates/js/table_filters.js:213 templates/js/table_filters.js:232 -#: templates/js/table_filters.js:249 +#: build/templates/build/build_base.html:43 build/templates/build/build_base.html:108 +#: order/templates/order/order_base.html:32 order/templates/order/order_base.html:83 +#: order/templates/order/sales_order_base.html:41 order/templates/order/sales_order_base.html:83 +#: templates/js/table_filters.js:213 templates/js/table_filters.js:232 templates/js/table_filters.js:249 msgid "Overdue" msgstr "Überfällig" @@ -788,10 +729,8 @@ msgid "Print Build Order" msgstr "Bauauftrag drucken" #: build/templates/build/build_base.html:62 -#, fuzzy -#| msgid "Build parts" msgid "Build actions" -msgstr "Bauteile" +msgstr "Bau-Auftrag Aktionen" #: build/templates/build/build_base.html:66 msgid "Edit Build" @@ -805,28 +744,22 @@ msgstr "Bau fertigstellen" msgid "Cancel Build" msgstr "Bau abbrechen" -#: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:11 +#: build/templates/build/build_base.html:82 build/templates/build/detail.html:11 msgid "Build Details" msgstr "Bau-Status" -#: build/templates/build/build_base.html:96 -#: build/templates/build/detail.html:59 -#: order/templates/order/receive_parts.html:24 -#: stock/templates/stock/item_base.html:370 templates/InvenTree/search.html:236 -#: templates/js/barcode.js:119 templates/js/build.js:710 -#: templates/js/order.js:187 templates/js/order.js:285 -#: templates/js/stock.js:624 templates/js/stock.js:1198 +#: build/templates/build/build_base.html:96 build/templates/build/detail.html:59 +#: order/templates/order/receive_parts.html:24 stock/templates/stock/item_base.html:370 +#: templates/InvenTree/search.html:236 templates/js/barcode.js:119 templates/js/build.js:710 +#: templates/js/order.js:187 templates/js/order.js:285 templates/js/stock.js:624 +#: templates/js/stock.js:1198 msgid "Status" msgstr "Status" -#: build/templates/build/build_base.html:104 -#: build/templates/build/detail.html:121 -#: order/templates/order/order_base.html:121 -#: order/templates/order/sales_order_base.html:114 -#: report/templates/report/inventree_build_order_base.html:129 -#: templates/js/build.js:723 templates/js/order.js:200 -#: templates/js/order.js:298 +#: build/templates/build/build_base.html:104 build/templates/build/detail.html:121 +#: order/templates/order/order_base.html:121 order/templates/order/sales_order_base.html:114 +#: report/templates/report/inventree_build_order_base.html:129 templates/js/build.js:723 +#: templates/js/order.js:200 templates/js/order.js:298 msgid "Target Date" msgstr "Zieldatum" @@ -834,43 +767,36 @@ msgstr "Zieldatum" msgid "This build was due on" msgstr "Fertigung überfällig seit" -#: build/templates/build/build_base.html:115 -#: build/templates/build/detail.html:64 +#: build/templates/build/build_base.html:115 build/templates/build/detail.html:64 msgid "Progress" msgstr "Fortschritt" -#: build/templates/build/build_base.html:128 -#: build/templates/build/detail.html:84 order/models.py:650 -#: order/templates/order/sales_order_base.html:9 -#: order/templates/order/sales_order_base.html:33 -#: order/templates/order/sales_order_ship.html:25 -#: part/templates/part/allocation.html:30 -#: report/templates/report/inventree_build_order_base.html:139 -#: stock/templates/stock/item_base.html:258 templates/js/order.js:245 +#: build/templates/build/build_base.html:128 build/templates/build/detail.html:84 order/models.py:650 +#: order/templates/order/sales_order_base.html:9 order/templates/order/sales_order_base.html:33 +#: order/templates/order/sales_order_ship.html:25 part/templates/part/allocation.html:30 +#: report/templates/report/inventree_build_order_base.html:139 stock/templates/stock/item_base.html:258 +#: templates/js/order.js:245 msgid "Sales Order" -msgstr "Verkaufsauftrag" +msgstr "Auftrag" -#: build/templates/build/build_base.html:135 -#: build/templates/build/detail.html:98 +#: build/templates/build/build_base.html:135 build/templates/build/detail.html:98 #: report/templates/report/inventree_build_order_base.html:156 msgid "Issued By" -msgstr "Aufgegebenvon" +msgstr "Aufgegeben von" -#: build/templates/build/build_base.html:142 -#: build/templates/build/detail.html:105 +#: build/templates/build/build_base.html:142 build/templates/build/detail.html:105 #: report/templates/report/inventree_build_order_base.html:162 msgid "Responsible" msgstr "Verantwortlicher Benutzer" -#: build/templates/build/build_children.html:10 -#: build/templates/build/navbar.html:42 +#: build/templates/build/build_children.html:10 build/templates/build/navbar.html:42 msgid "Child Build Orders" msgstr "Unter-Bauaufträge" -#: build/templates/build/build_output.html:10 -#: build/templates/build/navbar.html:35 build/templates/build/navbar.html:38 +#: build/templates/build/build_output.html:10 build/templates/build/navbar.html:35 +#: build/templates/build/navbar.html:38 msgid "Build Outputs" -msgstr "Bau-Ausgabe" +msgstr "Endprodukte" #: build/templates/build/build_output_create.html:7 msgid "The Bill of Materials contains trackable parts" @@ -878,104 +804,75 @@ msgstr "" #: build/templates/build/build_output_create.html:8 msgid "Build outputs must be generated individually." -msgstr "" +msgstr "Endprodukte müssen individuell angelegt werden." #: build/templates/build/build_output_create.html:9 msgid "Multiple build outputs will be created based on the quantity specified." -msgstr "" +msgstr "Mehrere Endprodukte werden anhand der gegebenen Anzahl angelegt werden." #: build/templates/build/build_output_create.html:15 msgid "Trackable parts can have serial numbers specified" msgstr "Nachverfolgbare Teile können Seriennummern haben" #: build/templates/build/build_output_create.html:16 -#, fuzzy -#| msgid "Serial number for this item" msgid "Enter serial numbers to generate multiple single build outputs" -msgstr "Seriennummer für dieses Teil" +msgstr "Seriennummeren für mehrere einlene Endprodukte angeben" #: build/templates/build/cancel.html:5 -#, fuzzy -#| msgid "Are you sure you wish to unallocate all stock for this build?" msgid "Are you sure you wish to cancel this build?" -msgstr "" -"Sind Sie sicher, dass sie alle Lagerobjekte von diesem Bau entfernen möchten?" +msgstr "Sind Sie sicher, dass sie diesen Bauauftrag abbrechen möchten?" #: build/templates/build/complete.html:8 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build can be completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag kann fertiggstellt werden" #: build/templates/build/complete.html:12 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build cannot be completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag kann nicht fertiggestellt werden" #: build/templates/build/complete.html:15 -#, fuzzy -#| msgid "Complete Build" msgid "Incompleted build outputs remain" -msgstr "Bau fertigstellen" +msgstr "unfertige Endprodukte vorhanden" #: build/templates/build/complete.html:18 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Required build quantity has not been completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" #: build/templates/build/complete_output.html:9 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Stock allocation is complete" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bestandszuordnung ist vollständig" #: build/templates/build/complete_output.html:13 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Stock allocation is incomplete" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bestandszuordnung ist nicht vollständig" #: build/templates/build/complete_output.html:19 -#, fuzzy -#| msgid "This SalesOrder has not been fully allocated" msgid "parts have not been fully allocated" -msgstr "Dieser Auftrag ist nicht vollständig zugeordnet" +msgstr "Teile wurden noch nicht vollständig zugeordnet" #: build/templates/build/complete_output.html:40 msgid "The following items will be created" msgstr "Die folgenden Objekte werden erstellt" #: build/templates/build/create_build_item.html:7 -#, fuzzy -#| msgid "Stock Item to allocate to build" msgid "Select a stock item to allocate to the selected build output" -msgstr "Lagerobjekt dem Bau zuweisen" +msgstr "BestandsObjekt zur Zuordnung zum ausgewählten Endprodukt auswählen" #: build/templates/build/create_build_item.html:11 -#, fuzzy -#| msgid "The following stock items will be allocated to the build:" msgid "The allocated stock will be installed into the following build output:" -msgstr "Folgende Lagerobjekte werden dem Bau automatisch zugewiesen:" +msgstr "Der zugeordnete Bestand wird in den folgenden Endprodukten verbaut werden:" #: build/templates/build/create_build_item.html:19 -#, fuzzy -#| msgid "Stock available" msgid "No stock available for" -msgstr "Bestand verfügbar" +msgstr "Kein Bestand verfügbar für" #: build/templates/build/delete_build_item.html:8 -#, fuzzy -#| msgid "Are you sure you want to unallocate these parts?" msgid "Are you sure you want to unallocate this stock?" -msgstr "Sind Sie sicher, dass sie die folgenden Teile entfernen möchten?" +msgstr "Sind Sie sicher, dass sie die folgenden Bestands-Zuordnung entfernen möchten?" #: build/templates/build/delete_build_item.html:11 -#, fuzzy -#| msgid "The following stock items will be allocated to the build:" msgid "The selected stock will be unallocated from the build output" -msgstr "Folgende Lagerobjekte werden dem Bau automatisch zugewiesen:" +msgstr "Der ausgeählte Bestand wird von den Endprodukten zurückgenommen werden" #: build/templates/build/detail.html:35 msgid "Stock Source" @@ -990,46 +887,34 @@ msgid "Destination" msgstr "Ziel" #: build/templates/build/detail.html:53 -#, fuzzy -#| msgid "Does this part have tracking for unique items?" msgid "Destination location not specified" -msgstr "Hat dieses Teil Tracking für einzelne Objekte?" +msgstr "Ziel-Lagerort nicht angegeben" -#: build/templates/build/detail.html:70 -#: stock/templates/stock/item_base.html:282 templates/js/stock.js:632 -#: templates/js/stock.js:1205 templates/js/table_filters.js:85 -#: templates/js/table_filters.js:174 +#: build/templates/build/detail.html:70 stock/templates/stock/item_base.html:282 templates/js/stock.js:632 +#: templates/js/stock.js:1205 templates/js/table_filters.js:85 templates/js/table_filters.js:174 msgid "Batch" msgstr "Los" -#: build/templates/build/detail.html:116 -#: order/templates/order/order_base.html:108 +#: build/templates/build/detail.html:116 order/templates/order/order_base.html:108 #: order/templates/order/sales_order_base.html:108 templates/js/build.js:718 msgid "Created" msgstr "Erstellt" #: build/templates/build/detail.html:127 -#, fuzzy -#| msgid "No destination set" msgid "No target date set" -msgstr "Kein Ziel gesetzt" +msgstr "Kein Ziel-Datum gesetzt" -#: build/templates/build/detail.html:132 templates/js/build.js:696 -#: templates/js/build.js:728 +#: build/templates/build/detail.html:132 templates/js/build.js:696 templates/js/build.js:728 msgid "Completed" msgstr "Fertig" #: build/templates/build/detail.html:136 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build not complete" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag ist nicht vollständig" #: build/templates/build/edit_build_item.html:7 -#, fuzzy -#| msgid "Stock quantity to allocate to build" msgid "Alter the quantity of stock allocated to the build output" -msgstr "Lagerobjekt-Anzahl dem Bau zuweisen" +msgstr "Anzahl des zugeordneten Bestands für die Endprodukte ändern" #: build/templates/build/index.html:28 build/views.py:657 msgid "New Build Order" @@ -1037,16 +922,14 @@ msgstr "Neuer Bauauftrag" #: build/templates/build/index.html:37 build/templates/build/index.html:38 msgid "Print Build Orders" -msgstr "Bauauftrag ausdrucken" +msgstr "Bauaufträge ausdrucken" -#: build/templates/build/index.html:43 -#: order/templates/order/purchase_orders.html:22 +#: build/templates/build/index.html:43 order/templates/order/purchase_orders.html:22 #: order/templates/order/sales_orders.html:22 msgid "Display calendar view" msgstr "Kalendar Ansicht" -#: build/templates/build/index.html:46 -#: order/templates/order/purchase_orders.html:25 +#: build/templates/build/index.html:46 order/templates/order/purchase_orders.html:25 #: order/templates/order/sales_orders.html:25 msgid "Display list view" msgstr "Listen Ansicht" @@ -1055,29 +938,24 @@ msgstr "Listen Ansicht" msgid "Build Order Details" msgstr "Bauauftrag-details" -#: build/templates/build/navbar.html:15 -#: company/templates/company/navbar.html:15 -#: order/templates/order/po_navbar.html:14 -#: order/templates/order/so_navbar.html:15 part/templates/part/navbar.html:15 +#: build/templates/build/navbar.html:15 company/templates/company/navbar.html:15 +#: order/templates/order/po_navbar.html:14 order/templates/order/so_navbar.html:15 +#: part/templates/part/navbar.html:15 msgid "Details" msgstr "Details" #: build/templates/build/navbar.html:20 build/templates/build/navbar.html:23 #: build/templates/build/parts.html:11 -#, fuzzy -#| msgid "Required" msgid "Required Parts" -msgstr "benötigt" +msgstr "benötigte Teile" #: build/templates/build/navbar.html:27 build/templates/build/navbar.html:30 msgid "In Progress" msgstr "In Bearbeitung" #: build/templates/build/navbar.html:45 -#, fuzzy -#| msgid "Cancel Build" msgid "Child Builds" -msgstr "Bau abbrechen" +msgstr "Unter-Endprodukte" #: build/templates/build/navbar.html:56 msgid "Build Order Notes" @@ -1088,29 +966,24 @@ msgid "Build Notes" msgstr "Bau-Bemerkungen" #: build/templates/build/notes.html:23 company/templates/company/notes.html:21 -#: order/templates/order/order_notes.html:24 -#: order/templates/order/sales_order_notes.html:26 +#: order/templates/order/order_notes.html:24 order/templates/order/sales_order_notes.html:26 #: part/templates/part/notes.html:25 stock/templates/stock/item_notes.html:23 msgid "Save" msgstr "Speichern" #: build/templates/build/notes.html:30 company/templates/company/notes.html:29 -#: order/templates/order/order_notes.html:31 -#: order/templates/order/sales_order_notes.html:32 +#: order/templates/order/order_notes.html:31 order/templates/order/sales_order_notes.html:32 #: part/templates/part/notes.html:33 stock/templates/stock/item_notes.html:29 msgid "Edit notes" msgstr "Bermerkungen bearbeiten" #: build/templates/build/unallocate.html:10 msgid "Are you sure you wish to unallocate all stock for this build?" -msgstr "" -"Sind Sie sicher, dass sie alle Lagerobjekte von diesem Bau entfernen möchten?" +msgstr "Sind Sie sicher, dass sie alle BestandsObjekt von diesem Bau entfernen möchten?" #: build/templates/build/unallocate.html:12 -#, fuzzy -#| msgid "The following stock items will be allocated to the build:" msgid "All incomplete stock allocations will be removed from the build" -msgstr "Folgende Lagerobjekte werden dem Bau automatisch zugewiesen:" +msgstr "Alle unvollständigen Bestandszuordnungen werden vom Endprodukt entfernt" #: build/views.py:77 msgid "Build was cancelled" @@ -1121,159 +994,117 @@ msgid "Allocate Stock" msgstr "Lagerbestand zuweisen" #: build/views.py:154 build/views.py:314 build/views.py:485 -#, fuzzy -#| msgid "No action specified" msgid "Build output must be specified" -msgstr "Keine Aktion angegeben" +msgstr "Endprodukt muss angegeben sein" #: build/views.py:168 -#, fuzzy -#| msgid "Allocate Stock to Build" msgid "Allocated stock to build output" -msgstr "Lagerbestand dem Bau zuweisen" +msgstr "Bestand dem Endprodukt zuweisen" #: build/views.py:180 -#, fuzzy -#| msgid "Build Outputs" msgid "Create Build Output" -msgstr "Bau-Ausgabe" +msgstr "Endprodukt anlegen" #: build/views.py:203 stock/models.py:964 stock/views.py:1788 -#, fuzzy -#| msgid "Serial numbers already exist: " msgid "Serial numbers already exist" -msgstr "Seriennummern existieren bereits:" +msgstr "Seriennummern existieren bereits" #: build/views.py:212 -#, fuzzy -#| msgid "Serial number for this item" msgid "Serial numbers required for trackable build output" -msgstr "Seriennummer für dieses Teil" +msgstr "Seriennummern für verfolgbare Endprodukte benötigt" #: build/views.py:278 -#, fuzzy -#| msgid "Delete Build" msgid "Delete Build Output" -msgstr "Bau entfernt" +msgstr "Endprodukt entfernen" #: build/views.py:299 build/views.py:383 msgid "Confirm unallocation of build stock" -msgstr "Zuweisungsaufhebung bestätigen" +msgstr "Entfernung von Bestands-Zuordnung bestätigen" #: build/views.py:300 build/views.py:384 stock/views.py:425 msgid "Check the confirmation box" msgstr "Bestätigungsbox bestätigen" #: build/views.py:312 -#, fuzzy -#| msgid "Quantity does not match serial numbers" msgid "Build output does not match build" -msgstr "Anzahl stimmt nicht mit den Seriennummern überein" +msgstr "Endprodukt stimmt nicht mit Bauauftrag überein" #: build/views.py:326 -#, fuzzy -#| msgid "No action specified" msgid "Build output deleted" -msgstr "Keine Aktion angegeben" +msgstr "Endprodukt gelöscht" #: build/views.py:408 -#, fuzzy -#| msgid "Complete Build" msgid "Complete Build Order" -msgstr "Bau fertigstellen" +msgstr "Bauauftrag fertigstellen" #: build/views.py:414 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build order cannot be completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag kann nicht fertiggestellt werden" #: build/views.py:425 -#, fuzzy -#| msgid "Complete Build" msgid "Completed build order" -msgstr "Bau fertigstellen" +msgstr "Bauauftrag fertiggestellt" #: build/views.py:441 -#, fuzzy -#| msgid "Complete Build" msgid "Complete Build Output" -msgstr "Bau fertigstellen" +msgstr "Endprodukt fertigstellen" #: build/views.py:476 -#, fuzzy -#| msgid "Quantity must not exceed available stock quantity ({n})" msgid "Quantity to complete cannot exceed build output quantity" -msgstr "Anzahl darf nicht die verfügbare Anzahl überschreiten ({n})" +msgstr "Fertigzustellende Anzahl darf nicht die geplante Endprodukt-Anzahl überschreiten" #: build/views.py:482 -#, fuzzy -#| msgid "Confirm completion of build" msgid "Confirm completion of incomplete build" -msgstr "Baufertigstellung bestätigen" +msgstr "Endprodukt-Fertigstellung bestätigen" #: build/views.py:573 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build output completed" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Endprodukt fertiggestellt" #: build/views.py:711 msgid "Created new build" msgstr "Neuen Bau angelegt" #: build/views.py:732 -#, fuzzy -#| msgid "Edit Build Details" msgid "Edit Build Order Details" -msgstr "Baudetails bearbeiten" +msgstr "Bauauftragdetails bearbeiten" #: build/views.py:765 msgid "Edited build" msgstr "Bau bearbeitet" #: build/views.py:774 -#, fuzzy -#| msgid "Complete Build" msgid "Delete Build Order" -msgstr "Bau fertigstellen" +msgstr "Bauauftrag löschen" #: build/views.py:789 msgid "Removed parts from build allocation" msgstr "Teile von Bauzuordnung entfernt" #: build/views.py:801 -#, fuzzy -#| msgid "Allocate Stock to Build" msgid "Allocate stock to build output" -msgstr "Lagerbestand dem Bau zuweisen" +msgstr "Bestand dem Endprodukt zuweisen" #: build/views.py:844 -#, fuzzy -#| msgid "This stock item is allocated to Build" msgid "Item must be currently in stock" -msgstr "Dieses Lagerobjekt ist dem Bau zugewiesen" +msgstr "Teil muss aktuell im Bestand sein" #: build/views.py:850 -#, fuzzy -#| msgid "StockItem is over-allocated" msgid "Stock item is over-allocated" -msgstr "Zu viele Lagerobjekte zugewiesen" +msgstr "BestandObjekt ist zu oft zugewiesen" -#: build/views.py:851 templates/js/bom.js:230 templates/js/build.js:519 -#: templates/js/build.js:778 templates/js/build.js:961 +#: build/views.py:851 templates/js/bom.js:230 templates/js/build.js:519 templates/js/build.js:778 +#: templates/js/build.js:961 msgid "Available" msgstr "verfügbar" #: build/views.py:853 -#, fuzzy -#| msgid "StockItem has been allocated" msgid "Stock item must be selected" -msgstr "Lagerobjekt wurde zugewiesen" +msgstr "BestandsObjekt muss ausgewählt sein" #: build/views.py:1016 msgid "Edit Stock Allocation" -msgstr "Lagerzuordnung bearbeiten" +msgstr "Bestandszuordnung bearbeiten" #: build/views.py:1020 msgid "Updated Build Item" @@ -1281,10 +1112,9 @@ msgstr "Bauobjekt aktualisiert" #: build/views.py:1049 msgid "Add Build Order Attachment" -msgstr "Bauauftragsanhang hinzufügen" +msgstr "Bauauftrags-Anhang hinzufügen" -#: build/views.py:1062 order/views.py:107 order/views.py:159 part/views.py:167 -#: stock/views.py:277 +#: build/views.py:1062 order/views.py:107 order/views.py:159 part/views.py:167 stock/views.py:277 msgid "Added attachment" msgstr "Anhang hinzugefügt" @@ -1342,7 +1172,7 @@ msgstr "Bacode-Feature verwenden" #: common/models.py:83 msgid "Enable barcode scanner support" -msgstr "Barcode Scanner Unterstützung" +msgstr "Barcode-Scanner Unterstützung" #: common/models.py:89 msgid "IPN Regex" @@ -1361,66 +1191,53 @@ msgid "Allow multiple parts to share the same IPN" msgstr "Mehrere Artikel mit gleicher IPN erlaubt" #: common/models.py:101 -#, fuzzy -#| msgid "Import BOM data" msgid "Copy Part BOM Data" -msgstr "Stückliste importieren" +msgstr "Teil-Stückliste kopieren" #: common/models.py:102 msgid "Copy BOM data by default when duplicating a part" -msgstr "" +msgstr "Stückliste beim Duplizieren von Teil kopieren" #: common/models.py:108 -#, fuzzy -#| msgid "Parameters" msgid "Copy Part Parameter Data" -msgstr "Parameter" +msgstr "Teil-Parameter kopieren" #: common/models.py:109 msgid "Copy parameter data by default when duplicating a part" msgstr "" #: common/models.py:115 -#, fuzzy -#| msgid "Parameters" msgid "Copy Part Test Data" -msgstr "Parameter" +msgstr "Teil-Testdaten kopieren" #: common/models.py:116 msgid "Copy test data by default when duplicating a part" msgstr "" #: common/models.py:122 -#, fuzzy -#| msgid "Edit Part Parameter Template" msgid "Copy Category Parameter Templates" -msgstr "Teilparametervorlage bearbeiten" +msgstr "Kategorie-Parametervorlage kopieren" #: common/models.py:123 msgid "Copy category parameter templates when creating a part" msgstr "" #: common/models.py:129 -#, fuzzy -#| msgid "Receive Parts" msgid "Recent Part Count" -msgstr "Teile empfangen" +msgstr "Aktuelle Teile-Stände" #: common/models.py:130 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:136 part/templates/part/detail.html:160 -#: report/models.py:168 stock/forms.py:258 templates/js/table_filters.js:24 -#: templates/js/table_filters.js:283 +#: common/models.py:136 part/templates/part/detail.html:160 report/models.py:168 stock/forms.py:258 +#: templates/js/table_filters.js:24 templates/js/table_filters.js:283 msgid "Template" msgstr "Vorlage" #: common/models.py:137 -#, fuzzy -#| msgid "Part is not a virtual part" msgid "Parts are templates by default" -msgstr "Teil ist nicht virtuell" +msgstr "Teile sind standardmäßig Vorlagen" #: common/models.py:143 part/models.py:832 part/templates/part/detail.html:170 #: templates/js/table_filters.js:295 @@ -1428,10 +1245,8 @@ msgid "Assembly" msgstr "Baugruppe" #: common/models.py:144 -#, fuzzy -#| msgid "Part can be assembled from other parts" msgid "Parts can be assembled from other components by default" -msgstr "Teil kann aus anderen Teilen angefertigt werden" +msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" #: common/models.py:150 part/models.py:838 part/templates/part/detail.html:180 #: templates/js/table_filters.js:299 @@ -1439,10 +1254,8 @@ msgid "Component" msgstr "Komponente" #: common/models.py:151 -#, 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" +msgstr "Teile können standardmäßig in Baugruppen benutzt werden" #: common/models.py:157 part/models.py:849 part/templates/part/detail.html:200 msgid "Purchaseable" @@ -1504,60 +1317,48 @@ msgid "Default page size for PDF reports" msgstr "Standardseitenformat für PDF Report" #: common/models.py:210 -#, fuzzy -#| msgid "Edit notes" msgid "Test Reports" -msgstr "Bermerkungen bearbeiten" +msgstr "Test-Berichte" #: common/models.py:211 -#, fuzzy -#| msgid "Parameter Template" msgid "Enable generation of test reports" -msgstr "Parameter Vorlage" +msgstr "Erstellung von Test-Berichten aktivieren" #: common/models.py:217 -#, fuzzy -#| msgid "Stock Export Options" msgid "Stock Expiry" -msgstr "Lagerbestandsexportoptionen" +msgstr "Bestands-Ablauf" #: common/models.py:218 msgid "Enable stock expiry functionality" -msgstr "Lager Ablaufdatum ermöglichen" +msgstr "Bestands-Ablauf ermöglichen" #: common/models.py:224 -#, fuzzy -#| msgid "Serialize Stock" msgid "Sell Expired Stock" -msgstr "Lagerbestand erfassen" +msgstr "Abgelaufenen Bestand verkaufen" #: common/models.py:225 msgid "Allow sale of expired stock" -msgstr "" +msgstr "Verkauf von abgelaufenem Bestand erlauben" #: common/models.py:231 -#, fuzzy -#| msgid "Stock Item" msgid "Stock Stale Time" -msgstr "Lagerobjekt" +msgstr "Bestands-Stehzeit" #: common/models.py:232 msgid "Number of days stock items are considered stale before expiring" -msgstr "" +msgstr "Anzahl an Tagen an denen Bestandsobjekte als abgestanden markiert werden bevor sie ablaufen" #: common/models.py:234 part/templates/part/detail.html:121 msgid "days" msgstr "Tage" #: common/models.py:239 -#, fuzzy -#| msgid "Builds" msgid "Build Expired Stock" -msgstr "Baue" +msgstr "Abgelaufenen Bestand verbauen" #: common/models.py:240 msgid "Allow building with expired stock" -msgstr "" +msgstr "Verbauen von abgelaufenen Bestand erlauben" #: common/models.py:246 msgid "Stock Ownership Control" @@ -1565,7 +1366,7 @@ msgstr "" #: common/models.py:247 msgid "Enable ownership control over stock locations and items" -msgstr "" +msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren" #: common/models.py:253 msgid "Group by Part" @@ -1573,71 +1374,51 @@ msgstr "Gruppieren nach Teil" #: common/models.py:254 msgid "Group stock items by part reference in table views" -msgstr "" +msgstr "BestandsObjekte in Tabellen anhand von Teil-Referenz gruppieren" #: common/models.py:260 -#, fuzzy -#| msgid "Parent Stock Item" msgid "Recent Stock Count" -msgstr "Eltern-Lagerobjekt" +msgstr "aktueller Bestand" #: common/models.py:261 -#, fuzzy -#| msgid "Number of parts to build" msgid "Number of recent stock items to display on index page" -msgstr "Anzahl der zu bauenden Teile" +msgstr "Anzahl der aktuellen BestandsObjekte auf der Startseite" #: common/models.py:267 -#, fuzzy -#| msgid "Order Reference" msgid "Build Order Reference Prefix" -msgstr "Bestellreferenz" +msgstr "Bauauftrag-Referenz Präfix" #: common/models.py:268 -#, fuzzy -#| msgid "Order reference" msgid "Prefix value for build order reference" -msgstr "Bestell-Referenz" +msgstr "Präfix für Bauauftrag-Referenz" #: common/models.py:273 -#, fuzzy -#| msgid "Order Reference" msgid "Build Order Reference Regex" -msgstr "Bestellreferenz" +msgstr "Bauauftrag-Referenz RegEx" #: common/models.py:274 msgid "Regular expression pattern for matching build order reference" -msgstr "" +msgstr "RegEx Muster für die Zuordnung von Bauauftrag-Referenzen" #: common/models.py:278 -#, fuzzy -#| msgid "Sales Order Reference" msgid "Sales Order Reference Prefix" -msgstr "Bestellungsreferenz" +msgstr "Auftrags-Referenz Präfix" #: common/models.py:279 -#, fuzzy -#| msgid "Order reference" msgid "Prefix value for sales order reference" -msgstr "Bestell-Referenz" +msgstr "Präfix für Auftrags-Referenz" #: common/models.py:284 -#, fuzzy -#| msgid "Order reference" msgid "Purchase Order Reference Prefix" -msgstr "Bestell-Referenz" +msgstr "Bestellungs-Referenz Präfix" #: common/models.py:285 -#, fuzzy -#| msgid "Order reference" msgid "Prefix value for purchase order reference" -msgstr "Bestell-Referenz" +msgstr "Präfix für Bestellungs-Referenz" #: common/models.py:508 msgid "Settings key (must be unique - case insensitive" -msgstr "" -"Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird " -"nicht beachtet)" +msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)" #: common/models.py:510 msgid "Settings value" @@ -1652,8 +1433,6 @@ msgid "Value must be a boolean value" msgstr "Wahrheitswert erforderlich" #: common/models.py:579 -#, fuzzy -#| msgid "Must enter integer value" msgid "Value must be an integer value" msgstr "Nur Ganzzahl eingeben" @@ -1662,10 +1441,8 @@ msgid "Key string must be unique" msgstr "Schlüsseltext muss eindeutig sein" #: common/models.py:683 company/forms.py:113 -#, fuzzy -#| msgid "Price Breaks" msgid "Price break quantity" -msgstr "Preisstaffelung" +msgstr "Preisstaffelungs Anzahl" #: common/models.py:691 company/templates/company/supplier_part_pricing.html:82 #: part/templates/part/sale_prices.html:90 templates/js/bom.js:255 @@ -1677,16 +1454,12 @@ msgid "Unit price at specified quantity" msgstr "Stückpreis für die angegebene Anzahl" #: common/models.py:715 -#, fuzzy -#| msgid "Default Location" msgid "Default" -msgstr "Standard-Lagerort" +msgstr "Standard" #: common/templates/common/edit_setting.html:11 -#, fuzzy -#| msgid "Currency Value" msgid "Current value" -msgstr "Währungs-Wert" +msgstr "Aktueller Wert" #: common/views.py:25 msgid "Change Setting" @@ -1697,25 +1470,20 @@ msgid "Supplied value is not allowed" msgstr "Angegebener Wert nicht erlaubt" #: common/views.py:103 -#, fuzzy -#| msgid "Supplier part description" msgid "Supplied value must be a boolean" -msgstr "Zuliefererbeschreibung des Teils" +msgstr "Angegebener Wert muss ein Wahrheitswert sein" #: company/forms.py:37 company/models.py:139 -#, fuzzy -#| msgid "Do you purchase items from this company?" msgid "Default currency used for this company" -msgstr "Kaufen Sie Teile von dieser Firma?" +msgstr "Standard-Währung für diese Firma" #: company/forms.py:80 msgid "Single Price" msgstr "Einzelpreis" #: company/forms.py:82 -#, fuzzy msgid "Single quantity price" -msgstr "Keine gültige Menge" +msgstr "Einzelpreis" #: company/models.py:98 msgid "Company description" @@ -1786,8 +1554,7 @@ msgstr "Produziert diese Firma Teile?" msgid "Currency" msgstr "Währung" -#: company/models.py:313 stock/models.py:370 -#: stock/templates/stock/item_base.html:214 +#: company/models.py:313 stock/models.py:370 stock/templates/stock/item_base.html:214 msgid "Base Part" msgstr "Basisteil" @@ -1797,11 +1564,10 @@ msgstr "Teil auswählen" #: company/models.py:323 company/templates/company/detail.html:60 #: company/templates/company/supplier_part_base.html:83 -#: company/templates/company/supplier_part_detail.html:25 -#: order/templates/order/order_base.html:89 +#: company/templates/company/supplier_part_detail.html:25 order/templates/order/order_base.html:89 #: order/templates/order/order_wizard/select_pos.html:30 part/bom.py:170 -#: stock/templates/stock/item_base.html:331 templates/js/company.js:48 -#: templates/js/company.js:164 templates/js/order.js:170 +#: stock/templates/stock/item_base.html:331 templates/js/company.js:48 templates/js/company.js:164 +#: templates/js/order.js:170 msgid "Supplier" msgstr "Zulieferer" @@ -1821,8 +1587,8 @@ msgstr "Lagerbestandseinheit (SKU) des Zulieferers" #: company/models.py:340 company/templates/company/detail.html:55 #: company/templates/company/supplier_part_base.html:93 -#: company/templates/company/supplier_part_detail.html:34 part/bom.py:172 -#: templates/js/company.js:44 templates/js/company.js:188 +#: company/templates/company/supplier_part_detail.html:34 part/bom.py:172 templates/js/company.js:44 +#: templates/js/company.js:188 msgid "Manufacturer" msgstr "Hersteller" @@ -1832,8 +1598,7 @@ msgstr "Hersteller auswählen" #: company/models.py:347 company/templates/company/supplier_part_base.html:99 #: company/templates/company/supplier_part_detail.html:35 -#: order/templates/order/purchase_order_detail.html:183 part/bom.py:173 -#: templates/js/company.js:204 +#: order/templates/order/purchase_order_detail.html:183 part/bom.py:173 templates/js/company.js:204 msgid "MPN" msgstr "MPN" @@ -1841,8 +1606,7 @@ msgstr "MPN" msgid "Manufacturer part number" msgstr "Hersteller-Teilenummer" -#: company/models.py:353 part/models.py:742 -#: report/templates/report/inventree_build_order_base.html:168 +#: company/models.py:353 part/models.py:742 report/templates/report/inventree_build_order_base.html:168 #: templates/js/company.js:208 templates/js/part.js:430 msgid "Link" msgstr "Link" @@ -1868,22 +1632,17 @@ msgstr "Mindestpreis" msgid "Part packaging" msgstr "Teile-Packaging" -#: company/templates/company/assigned_stock.html:10 -#: company/templates/company/navbar.html:51 +#: company/templates/company/assigned_stock.html:10 company/templates/company/navbar.html:51 #: company/templates/company/navbar.html:54 templates/js/build.js:411 -#, fuzzy -#| msgid "Assigned" msgid "Assigned Stock" -msgstr "Zugewiesen" +msgstr "Zugeordneter Bestand" -#: company/templates/company/company_base.html:7 -#: company/templates/company/company_base.html:22 +#: company/templates/company/company_base.html:7 company/templates/company/company_base.html:22 #: templates/InvenTree/search.html:288 templates/js/company.js:33 msgid "Company" msgstr "Firma" -#: company/templates/company/company_base.html:51 -#: company/templates/company/detail.html:10 +#: company/templates/company/company_base.html:51 company/templates/company/detail.html:10 #: company/templates/company/navbar.html:12 msgid "Company Details" msgstr "Firmendetails" @@ -1901,41 +1660,34 @@ msgid "No website specified" msgstr "Keine Website angegeben" #: company/templates/company/detail.html:43 -#, fuzzy -#| msgid "Delete Currency" msgid "Uses default currency" -msgstr "Währung entfernen" +msgstr "verwendet Standard-Währung" -#: company/templates/company/detail.html:65 -#: order/templates/order/sales_order_base.html:89 stock/models.py:412 -#: stock/models.py:413 stock/templates/stock/item_base.html:241 +#: company/templates/company/detail.html:65 order/templates/order/sales_order_base.html:89 +#: stock/models.py:412 stock/models.py:413 stock/templates/stock/item_base.html:241 #: templates/js/company.js:40 templates/js/order.js:267 msgid "Customer" msgstr "Kunde" -#: company/templates/company/detail_part.html:10 -#: templates/InvenTree/search.html:148 +#: company/templates/company/detail_part.html:10 templates/InvenTree/search.html:148 msgid "Supplier Parts" msgstr "Zulieferer-Teile" -#: company/templates/company/detail_part.html:20 -#: order/templates/order/purchase_order_detail.html:75 +#: company/templates/company/detail_part.html:20 order/templates/order/purchase_order_detail.html:75 msgid "Create new supplier part" -msgstr "Neues Zuliefererteil anlegen" +msgstr "Neues Zulieferer-Teil anlegen" -#: company/templates/company/detail_part.html:21 -#: order/templates/order/purchase_order_detail.html:74 +#: company/templates/company/detail_part.html:21 order/templates/order/purchase_order_detail.html:74 #: part/templates/part/supplier.html:17 templates/js/stock.js:1082 msgid "New Supplier Part" msgstr "Neues Zulieferer-Teil" -#: company/templates/company/detail_part.html:26 -#: part/templates/part/category.html:122 part/templates/part/supplier.html:20 +#: company/templates/company/detail_part.html:26 part/templates/part/category.html:122 +#: part/templates/part/supplier.html:20 msgid "Options" msgstr "Optionen" -#: company/templates/company/detail_part.html:31 -#: part/templates/part/category.html:127 +#: company/templates/company/detail_part.html:31 part/templates/part/category.html:127 msgid "Order parts" msgstr "Teile bestellen" @@ -1947,9 +1699,8 @@ msgstr "Teile löschen" msgid "Delete Parts" msgstr "Teile löschen" -#: company/templates/company/detail_part.html:66 -#: part/templates/part/bom.html:159 part/templates/part/category.html:118 -#: templates/js/stock.js:1076 +#: company/templates/company/detail_part.html:66 part/templates/part/bom.html:159 +#: part/templates/part/category.html:118 templates/js/stock.js:1076 msgid "New Part" msgstr "Neues Teil" @@ -1958,8 +1709,7 @@ msgid "Create new Part" msgstr "Neues Teil hinzufügen" #: company/templates/company/detail_part.html:72 company/views.py:56 -#: order/templates/order/purchase_orders.html:164 -#: part/templates/part/supplier.html:50 +#: order/templates/order/purchase_orders.html:164 part/templates/part/supplier.html:50 msgid "New Supplier" msgstr "Neuer Zulieferer" @@ -1968,8 +1718,7 @@ msgstr "Neuer Zulieferer" msgid "Create new Supplier" msgstr "Neuen Zulieferer anlegen" -#: company/templates/company/detail_part.html:78 company/views.py:63 -#: part/templates/part/supplier.html:56 +#: company/templates/company/detail_part.html:78 company/views.py:63 part/templates/part/supplier.html:56 msgid "New Manufacturer" msgstr "Neuer Hersteller" @@ -1979,10 +1728,9 @@ msgstr "Neuen Hersteller anlegen" #: company/templates/company/detail_stock.html:10 msgid "Supplier Stock" -msgstr "Zuliefererbestand" +msgstr "Zulieferer-Bestand" -#: company/templates/company/detail_stock.html:37 -#: company/templates/company/supplier_part_stock.html:34 +#: company/templates/company/detail_stock.html:37 company/templates/company/supplier_part_stock.html:34 #: part/templates/part/category.html:114 part/templates/part/category.html:128 #: part/templates/part/stock.html:54 msgid "Export" @@ -1990,92 +1738,74 @@ msgstr "Exportieren" #: company/templates/company/index.html:7 msgid "Supplier List" -msgstr "Zuliefererliste" +msgstr "Zulieferer-Liste" #: company/templates/company/navbar.html:20 msgid "Supplied Parts" msgstr "Zulieferer-Teile" -#: company/templates/company/navbar.html:23 -#: order/templates/order/receive_parts.html:14 part/models.py:321 +#: company/templates/company/navbar.html:23 order/templates/order/receive_parts.html:14 part/models.py:321 #: part/templates/part/cat_link.html:7 part/templates/part/category.html:95 -#: part/templates/part/category_navbar.html:11 -#: part/templates/part/category_navbar.html:14 -#: part/templates/part/category_partlist.html:10 -#: templates/InvenTree/index.html:96 templates/InvenTree/search.html:113 -#: templates/InvenTree/settings/tabs.html:25 templates/navbar.html:23 +#: part/templates/part/category_navbar.html:11 part/templates/part/category_navbar.html:14 +#: part/templates/part/category_partlist.html:10 templates/InvenTree/index.html:96 +#: templates/InvenTree/search.html:113 templates/InvenTree/settings/tabs.html:25 templates/navbar.html:23 #: templates/stats.html:35 templates/stats.html:44 users/models.py:33 msgid "Parts" msgstr "Teile" #: company/templates/company/navbar.html:27 part/templates/part/navbar.html:33 -#: stock/templates/stock/location.html:100 -#: stock/templates/stock/location.html:115 templates/InvenTree/search.html:182 -#: templates/stats.html:48 templates/stats.html:57 users/models.py:35 +#: stock/templates/stock/location.html:100 stock/templates/stock/location.html:115 +#: templates/InvenTree/search.html:182 templates/stats.html:48 templates/stats.html:57 users/models.py:35 msgid "Stock Items" -msgstr "Lagerobjekte" +msgstr "BestandsObjekte" -#: company/templates/company/navbar.html:30 -#: company/templates/company/part_navbar.html:14 +#: company/templates/company/navbar.html:30 company/templates/company/part_navbar.html:14 #: part/templates/part/navbar.html:36 stock/templates/stock/loc_link.html:7 -#: stock/templates/stock/location.html:29 -#: stock/templates/stock/stock_app_base.html:9 +#: stock/templates/stock/location.html:29 stock/templates/stock/stock_app_base.html:9 #: templates/InvenTree/index.html:127 templates/InvenTree/search.html:180 -#: templates/InvenTree/search.html:216 -#: templates/InvenTree/settings/tabs.html:28 templates/js/part.js:172 +#: templates/InvenTree/search.html:216 templates/InvenTree/settings/tabs.html:28 templates/js/part.js:172 #: templates/js/part.js:397 templates/js/stock.js:559 templates/navbar.html:26 msgid "Stock" msgstr "Lagerbestand" -#: company/templates/company/navbar.html:36 -#: company/templates/company/navbar.html:45 -#: company/templates/company/navbar.html:48 -#: company/templates/company/sales_orders.html:11 -#: order/templates/order/sales_orders.html:8 -#: order/templates/order/sales_orders.html:13 +#: company/templates/company/navbar.html:36 company/templates/company/navbar.html:45 +#: company/templates/company/navbar.html:48 company/templates/company/sales_orders.html:11 +#: order/templates/order/sales_orders.html:8 order/templates/order/sales_orders.html:13 #: part/templates/part/navbar.html:92 part/templates/part/navbar.html:95 #: part/templates/part/sales_orders.html:10 templates/InvenTree/index.html:226 -#: templates/InvenTree/search.html:330 -#: templates/InvenTree/settings/tabs.html:37 templates/navbar.html:46 +#: templates/InvenTree/search.html:330 templates/InvenTree/settings/tabs.html:37 templates/navbar.html:46 #: users/models.py:38 msgid "Sales Orders" -msgstr "VK-Aufträge" +msgstr "Aufträge" -#: company/templates/company/navbar.html:39 -#: company/templates/company/purchase_orders.html:10 -#: order/templates/order/purchase_orders.html:8 -#: order/templates/order/purchase_orders.html:13 +#: company/templates/company/navbar.html:39 company/templates/company/purchase_orders.html:10 +#: order/templates/order/purchase_orders.html:8 order/templates/order/purchase_orders.html:13 #: part/templates/part/navbar.html:78 part/templates/part/navbar.html:81 #: part/templates/part/orders.html:10 templates/InvenTree/index.html:203 -#: templates/InvenTree/search.html:300 -#: templates/InvenTree/settings/tabs.html:34 templates/navbar.html:37 +#: templates/InvenTree/search.html:300 templates/InvenTree/settings/tabs.html:34 templates/navbar.html:37 #: users/models.py:37 msgid "Purchase Orders" -msgstr "EK-Bestellungen" +msgstr "Bestellungen" #: company/templates/company/notes.html:11 msgid "Company Notes" msgstr "Firmenbemerkungen" -#: company/templates/company/part_navbar.html:11 -#: company/templates/company/supplier_part_stock.html:10 +#: company/templates/company/part_navbar.html:11 company/templates/company/supplier_part_stock.html:10 msgid "Supplier Part Stock" -msgstr "Zuliefererbestand" +msgstr "Zulieferer-Bestand" -#: company/templates/company/part_navbar.html:18 -#: company/templates/company/supplier_part_orders.html:10 +#: company/templates/company/part_navbar.html:18 company/templates/company/supplier_part_orders.html:10 msgid "Supplier Part Orders" -msgstr "Zuliefererbestellungen" +msgstr "Zulieferer-Bestellungen" #: company/templates/company/part_navbar.html:21 msgid "Orders" msgstr "Bestellungen" #: company/templates/company/part_navbar.html:25 -#, fuzzy -#| msgid "Supplier Part" msgid "Supplier Part Pricing" -msgstr "Zulieferer-Teil" +msgstr "Zulieferer-Teil Bepreisung" #: company/templates/company/part_navbar.html:28 msgid "Pricing" @@ -2083,26 +1813,21 @@ msgstr "Bepreisung" #: company/templates/company/partdelete.html:5 msgid "Are you sure you want to delete the following Supplier Parts?" -msgstr "" -"Sind Sie sicher, dass sie die folgenden Zulieferer-Teile löschen möchten?" +msgstr "Sind Sie sicher, dass sie die folgenden Zulieferer-Teile löschen möchten?" -#: company/templates/company/purchase_orders.html:18 -#: order/templates/order/purchase_orders.html:19 +#: company/templates/company/purchase_orders.html:18 order/templates/order/purchase_orders.html:19 msgid "Create new purchase order" -msgstr "Neue EK-Bestellung anlegen" +msgstr "Neue Bestellung anlegen" -#: company/templates/company/purchase_orders.html:19 -#: order/templates/order/purchase_orders.html:20 +#: company/templates/company/purchase_orders.html:19 order/templates/order/purchase_orders.html:20 msgid "New Purchase Order" -msgstr "Neue EK-Bestellung" +msgstr "Neue Bestellung" -#: company/templates/company/sales_orders.html:19 -#: order/templates/order/sales_orders.html:19 +#: company/templates/company/sales_orders.html:19 order/templates/order/sales_orders.html:19 msgid "Create new sales order" msgstr "Neuen Auftrag anlegen" -#: company/templates/company/sales_orders.html:20 -#: order/templates/order/sales_orders.html:20 +#: company/templates/company/sales_orders.html:20 order/templates/order/sales_orders.html:20 msgid "New Sales Order" msgstr "Neuer Auftrag" @@ -2112,23 +1837,23 @@ msgstr "Neuer Auftrag" msgid "Supplier Part" msgstr "Zulieferer-Teil" -#: company/templates/company/supplier_part_base.html:35 -#: part/templates/part/orders.html:17 part/templates/part/part_base.html:64 +#: company/templates/company/supplier_part_base.html:35 part/templates/part/orders.html:17 +#: part/templates/part/part_base.html:64 msgid "Order part" msgstr "Teil bestellen" #: company/templates/company/supplier_part_base.html:39 msgid "Edit supplier part" -msgstr "Zuliefererteil bearbeiten" +msgstr "Zulieferer-Teil bearbeiten" #: company/templates/company/supplier_part_base.html:43 msgid "Delete supplier part" -msgstr "Zuliefererteil entfernen" +msgstr "Zulieferer-Teil entfernen" #: company/templates/company/supplier_part_base.html:55 #: company/templates/company/supplier_part_detail.html:10 msgid "Supplier Part Details" -msgstr "Zuliefererteildetails" +msgstr "Zulieferer-Teildetails" #: company/templates/company/supplier_part_base.html:60 #: company/templates/company/supplier_part_detail.html:18 @@ -2137,13 +1862,10 @@ msgstr "Internes Teil" #: company/templates/company/supplier_part_base.html:106 stock/models.py:394 #: stock/templates/stock/item_base.html:289 templates/js/stock.js:663 -#, fuzzy -#| msgid "Part packaging" msgid "Packaging" -msgstr "Teile-Packaging" +msgstr "Verpackungen" -#: company/templates/company/supplier_part_orders.html:18 -#: part/templates/part/orders.html:18 +#: company/templates/company/supplier_part_orders.html:18 part/templates/part/orders.html:18 msgid "Order Part" msgstr "Teil bestellen" @@ -2156,34 +1878,28 @@ msgstr "Preisinformationen ansehen" msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" -#: company/templates/company/supplier_part_pricing.html:38 -#: part/templates/part/sale_prices.html:46 +#: company/templates/company/supplier_part_pricing.html:38 part/templates/part/sale_prices.html:46 msgid "No price break information found" msgstr "Keine Informationen zur Preisstaffel gefunden" -#: company/templates/company/supplier_part_pricing.html:89 -#: part/templates/part/sale_prices.html:97 +#: company/templates/company/supplier_part_pricing.html:89 part/templates/part/sale_prices.html:97 msgid "Edit price break" msgstr "Preisstaffel bearbeiten" -#: company/templates/company/supplier_part_pricing.html:90 -#: part/templates/part/sale_prices.html:98 +#: company/templates/company/supplier_part_pricing.html:90 part/templates/part/sale_prices.html:98 msgid "Delete price break" msgstr "Preisstaffel löschen" -#: company/views.py:55 part/templates/part/navbar.html:72 -#: part/templates/part/navbar.html:75 templates/InvenTree/search.html:291 -#: templates/navbar.html:35 +#: company/views.py:55 part/templates/part/navbar.html:72 part/templates/part/navbar.html:75 +#: templates/InvenTree/search.html:291 templates/navbar.html:35 msgid "Suppliers" msgstr "Zulieferer" -#: company/views.py:62 templates/InvenTree/search.html:308 -#: templates/navbar.html:36 +#: company/views.py:62 templates/InvenTree/search.html:308 templates/navbar.html:36 msgid "Manufacturers" msgstr "Hersteller" -#: company/views.py:69 templates/InvenTree/search.html:321 -#: templates/navbar.html:45 +#: company/views.py:69 templates/InvenTree/search.html:321 templates/navbar.html:45 msgid "Customers" msgstr "Kunden" @@ -2237,15 +1953,15 @@ msgstr "Firma gelöscht" #: company/views.py:271 msgid "Edit Supplier Part" -msgstr "Zuliefererteil bearbeiten" +msgstr "Zulieferer-Teil bearbeiten" #: company/views.py:294 templates/js/stock.js:1083 msgid "Create new Supplier Part" -msgstr "Neues Zuliefererteil anlegen" +msgstr "Neues Zulieferer-Teil anlegen" #: company/views.py:413 msgid "Delete Supplier Part" -msgstr "Zuliefererteil entfernen" +msgstr "Zulieferer-Teil entfernen" #: company/views.py:490 part/views.py:2515 msgid "Added new price break" @@ -2264,16 +1980,12 @@ msgid "No valid objects provided to template" msgstr "" #: label/models.py:102 -#, fuzzy -#| msgid "Part name" msgid "Label name" -msgstr "Name des Teils" +msgstr "Label Name" #: label/models.py:109 -#, fuzzy -#| msgid "Part description" msgid "Label description" -msgstr "Beschreibung des Teils" +msgstr "Label Beschreibung" #: label/models.py:116 stock/forms.py:201 msgid "Label" @@ -2281,7 +1993,7 @@ msgstr "" #: label/models.py:117 msgid "Label template file" -msgstr "" +msgstr "Label-Vorlage-Datei" #: label/models.py:123 report/models.py:257 msgid "Enabled" @@ -2330,25 +2042,22 @@ msgstr "Bestellung versenden" #: order/forms.py:80 msgid "Receive parts to this location" -msgstr "Teile in diesen Ort empfangen" +msgstr "Teile in diesen Lagerort empfangen" #: order/forms.py:101 msgid "Purchase Order reference" -msgstr "Bestell-Referenz" +msgstr "Bestellungs-Referenz" #: order/forms.py:107 msgid "Target date for order delivery. Order will be overdue after this date." msgstr "" #: order/forms.py:134 -#, fuzzy -#| msgid "Cancel sales order" msgid "Enter sales order number" -msgstr "Auftrag stornieren" +msgstr "Auftrag-Nummer eingeben" #: order/forms.py:140 order/models.py:438 -msgid "" -"Target date for order completion. Order will be overdue after this date." +msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:98 @@ -2368,10 +2077,8 @@ msgid "Order notes" msgstr "Bestell-Notizen" #: order/models.py:171 order/models.py:431 -#, fuzzy -#| msgid "Purchase Order Details" msgid "Purchase order status" -msgstr "Bestelldetails" +msgstr "Bestellungs-Status" #: order/models.py:179 msgid "Company from which the items are being ordered" @@ -2379,34 +2086,27 @@ msgstr "" #: order/models.py:182 msgid "Supplier order reference code" -msgstr "Bestellreferenz" +msgstr "Zulieferer Bestellreferenz" #: order/models.py:193 -#, fuzzy -#| msgid "Issue Order" msgid "Issue Date" -msgstr "Bestellung aufgeben" +msgstr "Aufgabedatum" #: order/models.py:194 msgid "Date order was issued" -msgstr "" +msgstr "Datum an dem die Bestellung aufgegeben wurde" #: order/models.py:199 -#, fuzzy -#| msgid "Shipment Date" msgid "Target Delivery Date" -msgstr "Versanddatum" +msgstr "Ziel-Versanddatum" #: order/models.py:200 -msgid "" -"Expected date for order delivery. Order will be overdue after this date." +msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" #: order/models.py:205 -#, fuzzy -#| msgid "Creation Date" msgid "Completion Date" -msgstr "Erstelldatum" +msgstr "Fertigstellungsdatum" #: order/models.py:206 #, fuzzy @@ -2414,24 +2114,21 @@ msgstr "Erstelldatum" msgid "Date order was completed" msgstr "Bestellung als vollständig markieren" -#: order/models.py:230 order/models.py:329 part/views.py:1479 -#: stock/models.py:269 stock/models.py:948 +#: order/models.py:230 order/models.py:329 part/views.py:1479 stock/models.py:269 stock/models.py:948 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" #: order/models.py:235 msgid "Part supplier must match PO supplier" -msgstr "Teile-Zulieferer muss dem Zulieferer der EK-Bestellung entsprechen" +msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen" #: order/models.py:324 msgid "Lines can only be received against an order marked as 'Placed'" msgstr "Nur Teile aufgegebener Bestllungen können empfangen werden" #: order/models.py:346 -#, fuzzy -#| msgid "Receive line item" msgid "Received items" -msgstr "Position empfangen" +msgstr "Elemente empfangen" #: order/models.py:427 msgid "Company to which the items are being sold" @@ -2457,11 +2154,10 @@ msgstr "Position - Referenz" msgid "Line item notes" msgstr "Position - Notizen" -#: order/models.py:608 order/templates/order/order_base.html:9 -#: order/templates/order/order_base.html:24 +#: order/models.py:608 order/templates/order/order_base.html:9 order/templates/order/order_base.html:24 #: stock/templates/stock/item_base.html:303 templates/js/order.js:148 msgid "Purchase Order" -msgstr "EK-Bestellung" +msgstr "Bestellung" #: order/models.py:621 msgid "Supplier part" @@ -2471,8 +2167,7 @@ msgstr "Zulieferer-Teil" msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:631 stock/models.py:505 -#: stock/templates/stock/item_base.html:310 +#: order/models.py:631 stock/models.py:505 stock/templates/stock/item_base.html:310 msgid "Purchase Price" msgstr "EK-Preis" @@ -2482,30 +2177,29 @@ msgstr "EK-Preis pro Einheit" #: order/models.py:727 msgid "Cannot allocate stock item to a line with a different part" -msgstr "Kann Lagerobjekt keiner Zeile mit einem anderen Teil hinzufügen" +msgstr "Kann BestandsObjekt keiner Zeile mit einem anderen Teil hinzufügen" #: order/models.py:729 msgid "Cannot allocate stock to a line without a part" -msgstr "Kann Lagerobjekt keiner Zeile ohne Teil hinzufügen" +msgstr "Kann BestandsObjekt keiner Zeile ohne Teil hinzufügen" #: order/models.py:732 msgid "Allocation quantity cannot exceed stock quantity" -msgstr "Die zugewiesene Anzahl darf nicht die verfügbare Anzahl überschreiten" +msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten" #: order/models.py:742 msgid "Quantity must be 1 for serialized stock item" -msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" +msgstr "Anzahl für BestandsObjekt mit Seriennummer muss 1 sein" #: order/models.py:758 msgid "Select stock item to allocate" -msgstr "Lagerobjekt für Zuordnung auswählen" +msgstr "BestandsObjekt für Zuordnung auswählen" #: order/models.py:761 msgid "Enter stock allocation quantity" -msgstr "Zuordnungsanzahl eingeben" +msgstr "Anzahl für Bestandszuordnung eingeben" -#: order/templates/order/delete_attachment.html:5 -#: stock/templates/stock/attachment_delete.html:5 +#: order/templates/order/delete_attachment.html:5 stock/templates/stock/attachment_delete.html:5 #: templates/attachment_delete.html:5 msgid "Are you sure you want to delete this attachment?" msgstr "Sind Sie sicher, dass Sie diesen Anhang löschen wollen?" @@ -2515,51 +2209,41 @@ msgid "Edit order information" msgstr "Bestellinfos bearbeiten" #: order/templates/order/order_base.html:48 -#, fuzzy -#| msgid "Receive line item" msgid "Receive items" -msgstr "Position empfangen" +msgstr "Elemente empfangen" #: order/templates/order/order_base.html:61 msgid "Export order to file" msgstr "Exportiere Bestellung in Datei" -#: order/templates/order/order_base.html:69 -#: order/templates/order/po_navbar.html:11 +#: order/templates/order/order_base.html:69 order/templates/order/po_navbar.html:11 msgid "Purchase Order Details" -msgstr "Bestelldetails" +msgstr "Bestellungs-Details" -#: order/templates/order/order_base.html:74 -#: order/templates/order/sales_order_base.html:74 +#: order/templates/order/order_base.html:74 order/templates/order/sales_order_base.html:74 msgid "Order Reference" msgstr "Bestellreferenz" -#: order/templates/order/order_base.html:79 -#: order/templates/order/sales_order_base.html:79 +#: order/templates/order/order_base.html:79 order/templates/order/sales_order_base.html:79 msgid "Order Status" msgstr "Bestellstatus" #: order/templates/order/order_base.html:95 templates/js/order.js:179 msgid "Supplier Reference" -msgstr "Zuliefererreferenz" +msgstr "Zulieferer-Referenz" -#: order/templates/order/order_base.html:114 -#: report/templates/report/inventree_build_order_base.html:125 +#: order/templates/order/order_base.html:114 report/templates/report/inventree_build_order_base.html:125 msgid "Issued" msgstr "Aufgegeben" -#: order/templates/order/order_base.html:128 -#: order/templates/order/purchase_order_detail.html:207 -#: order/templates/order/receive_parts.html:22 -#: order/templates/order/sales_order_base.html:128 +#: order/templates/order/order_base.html:128 order/templates/order/purchase_order_detail.html:207 +#: order/templates/order/receive_parts.html:22 order/templates/order/sales_order_base.html:128 msgid "Received" msgstr "Empfangen" -#: order/templates/order/order_cancel.html:7 -#: order/templates/order/sales_order_cancel.html:9 +#: order/templates/order/order_cancel.html:7 order/templates/order/sales_order_cancel.html:9 msgid "Cancelling this order means that the order will no longer be editable." -msgstr "" -"Abbruch dieser Bestellung bedeutet, dass sie nicht länger bearbeitbar ist." +msgstr "Abbruch dieser Bestellung bedeutet, dass sie nicht länger bearbeitbar ist." #: order/templates/order/order_notes.html:13 msgid "Order Notes" @@ -2570,16 +2254,12 @@ msgid "Step 1 of 2 - Select Part Suppliers" msgstr "Schritt 1 von 2 - Zulieferer auswählen" #: order/templates/order/order_wizard/select_parts.html:14 -#, fuzzy -#| msgid "Select suppliers." msgid "Select suppliers" -msgstr "Zulieferer auswählen." +msgstr "Zulieferer auswählen" #: order/templates/order/order_wizard/select_parts.html:18 -#, fuzzy -#| msgid "No purchaseable parts selected." msgid "No purchaseable parts selected" -msgstr "Keine kaufbaren Teile ausgewählt." +msgstr "Keine kaufbaren Teile ausgewählt" #: order/templates/order/order_wizard/select_parts.html:31 msgid "Select Supplier" @@ -2591,63 +2271,54 @@ msgstr "Zulieferer auswählen für" #: order/templates/order/order_wizard/select_pos.html:8 msgid "Step 2 of 2 - Select Purchase Orders" -msgstr "Schritt 2 von 2 - EK-Bestellung auswählen" +msgstr "Schritt 2 von 2 - Bestellung auswählen" #: order/templates/order/order_wizard/select_pos.html:12 msgid "Select existing purchase orders, or create new orders." -msgstr "EK-Bestellungen auswählen oder anlegen." +msgstr "Bestellungen auswählen oder anlegen." -#: order/templates/order/order_wizard/select_pos.html:31 -#: templates/js/order.js:205 templates/js/order.js:308 +#: order/templates/order/order_wizard/select_pos.html:31 templates/js/order.js:205 +#: templates/js/order.js:308 msgid "Items" msgstr "Positionen" #: order/templates/order/order_wizard/select_pos.html:32 msgid "Select Purchase Order" -msgstr "EK-Bestellung auswählen" +msgstr "Bestellung auswählen" #: order/templates/order/order_wizard/select_pos.html:68 msgid "Select a purchase order for" -msgstr "EK-Bestellung auswählen für" +msgstr "Bestellung auswählen für" -#: order/templates/order/po_attachments.html:12 -#: order/templates/order/po_navbar.html:23 +#: order/templates/order/po_attachments.html:12 order/templates/order/po_navbar.html:23 msgid "Purchase Order Attachments" -msgstr "Bestellanhänge" +msgstr "Bestellungs-Anhänge" #: order/templates/order/po_navbar.html:17 -#, fuzzy -#| msgid "Receive line item" msgid "Received Stock Items" -msgstr "Position empfangen" +msgstr "BestandsObjekte empfangen" -#: order/templates/order/po_navbar.html:20 -#: order/templates/order/po_received_items.html:12 -#, fuzzy -#| msgid "Receive line item" +#: order/templates/order/po_navbar.html:20 order/templates/order/po_received_items.html:12 msgid "Received Items" -msgstr "Position empfangen" +msgstr "Empfangene Teile" #: order/templates/order/purchase_order_detail.html:14 msgid "Purchase Order Items" -msgstr "Bestellpositionen" +msgstr "Bestellungs-Positionen" -#: order/templates/order/purchase_order_detail.html:24 -#: order/templates/order/sales_order_detail.html:22 order/views.py:1105 -#: order/views.py:1188 +#: order/templates/order/purchase_order_detail.html:24 order/templates/order/sales_order_detail.html:22 +#: order/views.py:1105 order/views.py:1188 msgid "Add Line Item" msgstr "Position hinzufügen" #: order/templates/order/purchase_order_detail.html:45 -#: order/templates/order/purchase_order_detail.html:125 -#: part/templates/part/category.html:197 part/templates/part/category.html:239 -#: templates/js/stock.js:704 templates/js/stock.js:1088 +#: order/templates/order/purchase_order_detail.html:125 part/templates/part/category.html:197 +#: part/templates/part/category.html:239 templates/js/stock.js:704 templates/js/stock.js:1088 msgid "New Location" -msgstr "Neuer Standort" +msgstr "Neuer Lagerort" #: order/templates/order/purchase_order_detail.html:46 -#: order/templates/order/purchase_order_detail.html:126 -#: stock/templates/stock/location.html:35 +#: order/templates/order/purchase_order_detail.html:126 stock/templates/stock/location.html:35 msgid "Create new stock location" msgstr "Neuen Lagerort anlegen" @@ -2656,13 +2327,10 @@ msgid "No line items found" msgstr "Keine Positionen gefunden" #: order/templates/order/purchase_order_detail.html:198 -#, fuzzy -#| msgid "Price" msgid "Unit Price" -msgstr "Preis" +msgstr "Stück-Preis" -#: order/templates/order/purchase_order_detail.html:239 -#: order/templates/order/sales_order_detail.html:289 +#: order/templates/order/purchase_order_detail.html:239 order/templates/order/sales_order_detail.html:289 msgid "Edit line item" msgstr "Position bearbeiten" @@ -2686,14 +2354,12 @@ msgstr "" msgid "Order Code" msgstr "Bestellnummer" -#: order/templates/order/receive_parts.html:21 -#: part/templates/part/part_base.html:128 templates/js/part.js:413 +#: order/templates/order/receive_parts.html:21 part/templates/part/part_base.html:128 +#: templates/js/part.js:413 msgid "On Order" msgstr "bestellt" #: order/templates/order/receive_parts.html:23 -#, fuzzy -#| msgid "Received" msgid "Receive" msgstr "Empfangen" @@ -2709,8 +2375,7 @@ msgstr "Dieser Auftrag ist nicht vollständig zugeordnet" msgid "Packing List" msgstr "Packliste" -#: order/templates/order/sales_order_base.html:69 -#: order/templates/order/so_navbar.html:12 +#: order/templates/order/sales_order_base.html:69 order/templates/order/so_navbar.html:12 msgid "Sales Order Details" msgstr "Auftragsdetails" @@ -2718,37 +2383,30 @@ msgstr "Auftragsdetails" msgid "Customer Reference" msgstr "Kundenreferenz" -#: order/templates/order/sales_order_cancel.html:8 -#: order/templates/order/sales_order_ship.html:9 -#: part/templates/part/bom_duplicate.html:12 -#: stock/templates/stock/stockitem_convert.html:13 +#: order/templates/order/sales_order_cancel.html:8 order/templates/order/sales_order_ship.html:9 +#: part/templates/part/bom_duplicate.html:12 stock/templates/stock/stockitem_convert.html:13 msgid "Warning" msgstr "Warnung" #: order/templates/order/sales_order_detail.html:13 msgid "Sales Order Items" -msgstr "Auftragspositionen" +msgstr "Auftrags-Positionen" -#: order/templates/order/sales_order_detail.html:75 -#: order/templates/order/sales_order_detail.html:157 -#: report/templates/report/inventree_test_report_base.html:75 -#: stock/models.py:417 stock/templates/stock/item_base.html:228 -#: templates/js/build.js:418 +#: order/templates/order/sales_order_detail.html:75 order/templates/order/sales_order_detail.html:157 +#: report/templates/report/inventree_test_report_base.html:75 stock/models.py:417 +#: stock/templates/stock/item_base.html:228 templates/js/build.js:418 msgid "Serial Number" msgstr "Seriennummer" -#: order/templates/order/sales_order_detail.html:99 templates/js/build.js:459 -#: templates/js/build.js:789 +#: order/templates/order/sales_order_detail.html:99 templates/js/build.js:459 templates/js/build.js:789 msgid "Edit stock allocation" -msgstr "Lagerobjekt-Standort bearbeiten" +msgstr "Bestands-Zuordnung bearbeiten" -#: order/templates/order/sales_order_detail.html:100 templates/js/build.js:461 -#: templates/js/build.js:790 +#: order/templates/order/sales_order_detail.html:100 templates/js/build.js:461 templates/js/build.js:790 msgid "Delete stock allocation" -msgstr "Zuweisung löschen" +msgstr "Bestands-Zuordnung löschen" -#: order/templates/order/sales_order_detail.html:229 templates/js/build.js:523 -#: templates/js/build.js:785 +#: order/templates/order/sales_order_detail.html:229 templates/js/build.js:523 templates/js/build.js:785 msgid "Allocated" msgstr "Zugeordnet" @@ -2773,18 +2431,16 @@ msgid "Delete line item " msgstr "Position löschen " #: order/templates/order/sales_order_notes.html:14 -#, fuzzy -#| msgid "Sales Order Items" msgid "Sales Order Notes" -msgstr "Auftragspositionen" +msgstr "Auftrags-Positionen" #: order/templates/order/sales_order_ship.html:10 msgid "" -"This order has not been fully allocated. If the order is marked as shipped, " -"it can no longer be adjusted." +"This order has not been fully allocated. If the order is marked as shipped, it can no longer be " +"adjusted." msgstr "" -"Dieser Auftrag ist nicht vollständig zugeordnet. Wenn der Auftrag als " -"versendet markiert wird, kann er nicht mehr geändert werden." +"Dieser Auftrag ist nicht vollständig zugeordnet. Wenn der Auftrag als versendet markiert wird, kann er " +"nicht mehr geändert werden." #: order/templates/order/sales_order_ship.html:12 msgid "Ensure that the order allocation is correct before shipping the order." @@ -2800,18 +2456,15 @@ msgstr "Vor dem Versand sicherstellen, dass dies richtig ist." #: order/templates/order/sales_order_ship.html:27 msgid "Shipping this order means that the order will no longer be editable." -msgstr "" -"Versenden dieses Auftrags bedeutet, dass der Auftrag nicht mehr bearbeitbar " -"ist." +msgstr "Versenden dieses Auftrags bedeutet, dass der Auftrag nicht mehr bearbeitbar ist." #: order/templates/order/so_allocation_delete.html:7 msgid "This action will unallocate the following stock from the Sales Order" -msgstr "Diese Aktion wird die folgenden Lagerobjekte vom VK-Auftrag entfernen" +msgstr "Diese Aktion wird die folgenden BestandsObjekt vom Auftrag entfernen" -#: order/templates/order/so_attachments.html:12 -#: order/templates/order/so_navbar.html:26 +#: order/templates/order/so_attachments.html:12 order/templates/order/so_navbar.html:26 msgid "Sales Order Attachments" -msgstr "VK-Auftragsanhänge" +msgstr "Auftrags-Anhänge" #: order/templates/order/so_lineitem_delete.html:5 msgid "Are you sure you wish to delete this line item?" @@ -2819,27 +2472,27 @@ msgstr "Sind Sie sicher, dass Sie diese Position löschen möchten?" #: order/views.py:96 msgid "Add Purchase Order Attachment" -msgstr "EK-Bestellung Anhang hinzufügen" +msgstr "Bestellungs-Anhang hinzufügen" #: order/views.py:146 msgid "Add Sales Order Attachment" -msgstr "VK-Auftrag Anhang hinzufügen" +msgstr "Auftrags-Anhang hinzufügen" #: order/views.py:303 msgid "Create Purchase Order" -msgstr "EK-Bestellung anlegen" +msgstr "Bestellung anlegen" #: order/views.py:338 msgid "Create Sales Order" -msgstr "VK-Auftrag anlegen" +msgstr "Auftrag anlegen" #: order/views.py:373 msgid "Edit Purchase Order" -msgstr "EK-Bestellung bearbeiten" +msgstr "Bestellung bearbeiten" #: order/views.py:393 msgid "Edit Sales Order" -msgstr "VK-Auftrag bearbeiten" +msgstr "Auftrag bearbeiten" #: order/views.py:409 msgid "Cancel Order" @@ -2855,7 +2508,7 @@ msgstr "Bestellung kann nicht verworfen werden" #: order/views.py:435 msgid "Cancel sales order" -msgstr "VK-Auftrag stornieren" +msgstr "Auftrag stornieren" #: order/views.py:461 msgid "Issue Order" @@ -2866,24 +2519,18 @@ msgid "Confirm order placement" msgstr "Bestellungstätigung bestätigen" #: order/views.py:480 -#, fuzzy -#| msgid "Purchase Order Details" msgid "Purchase order issued" -msgstr "Bestelldetails" +msgstr "Bestellung erstellt" #: order/views.py:491 msgid "Complete Order" msgstr "Auftrag fertigstellen" #: order/views.py:507 -#, fuzzy -#| msgid "Confirm build completion" msgid "Confirm order completion" -msgstr "Bau-Fertigstellung bestätigen" +msgstr "Fertigstellung bestätigen" #: order/views.py:518 -#, fuzzy -#| msgid "Mark order as complete" msgid "Purchase order completed" msgstr "Bestellung als vollständig markieren" @@ -2924,14 +2571,12 @@ msgid "No lines specified" msgstr "Keine Zeilen angegeben" #: order/views.py:1114 -#, fuzzy -#| msgid "Supplier part description" msgid "Supplier part must be specified" -msgstr "Zuliefererbeschreibung des Teils" +msgstr "Zulieferer-Teil muss ausgewählt werden" #: order/views.py:1120 msgid "Supplier must match for Part and Order" -msgstr "Zulieferer muss zum Teil und zur EK-Bestellung passen" +msgstr "Zulieferer muss zu Teil und Bestellung passen" #: order/views.py:1239 order/views.py:1257 msgid "Edit Line Item" @@ -3001,61 +2646,47 @@ msgstr "" #: part/forms.py:75 msgid "Select maximum number of BOM levels to export (0 = all levels)" -msgstr "" +msgstr "Maximale Anzahl an Ebenen für Stückliste-Export auswählen (0 = alle Ebenen)" #: part/forms.py:77 -#, fuzzy -#| msgid "New Parameter" msgid "Include Parameter Data" -msgstr "Neuer Parameter" +msgstr "Parameter-Daten einschließen" #: part/forms.py:77 msgid "Include part parameters data in exported BOM" -msgstr "" +msgstr "Teil-Parameter in Stückliste-Export einschließen" #: part/forms.py:79 -#, fuzzy -#| msgid "Include stock in sublocations" msgid "Include Stock Data" -msgstr "Bestand in Unterlagerorten einschließen" +msgstr "Bestand einschließen" #: part/forms.py:79 -#, fuzzy -#| msgid "Include parts in subcategories" msgid "Include part stock data in exported BOM" -msgstr "Teile in Unterkategorien einschließen" +msgstr "Teil-Bestand in Stückliste-Export einschließen" #: part/forms.py:81 -#, fuzzy -#| msgid "New Supplier Part" msgid "Include Supplier Data" -msgstr "Neues Zulieferer-Teil" +msgstr "Zulieferer einschließen" #: part/forms.py:81 msgid "Include part supplier data in exported BOM" -msgstr "" +msgstr "Zulieferer-Daten in Stückliste-Export einschließen" #: part/forms.py:102 part/models.py:2053 msgid "Parent Part" msgstr "Ausgangsteil" #: part/forms.py:103 part/templates/part/bom_duplicate.html:7 -#, fuzzy -#| msgid "Select parent part" msgid "Select parent part to copy BOM from" -msgstr "Ausgangsteil auswählen" +msgstr "Teil für Stücklisten-Kopie auswählen" #: part/forms.py:109 -#, fuzzy -#| msgid "Select from existing images" msgid "Clear existing BOM items" -msgstr "Aus vorhandenen Bildern auswählen" +msgstr "Stücklisten-Position(en) löschen" #: part/forms.py:114 -#, fuzzy -#| msgid "Confim BOM item deletion" msgid "Confirm BOM duplication" -msgstr "Löschung von BOM-Position bestätigen" +msgstr "Kopie von Stückliste bestätigen" #: part/forms.py:132 msgid "Confirm that the BOM is correct" @@ -3074,54 +2705,40 @@ msgid "Select part category" msgstr "Teilekategorie wählen" #: part/forms.py:199 -#, fuzzy -#| msgid "Perform 'deep copy' which will duplicate all BOM data for this part" msgid "Duplicate all BOM data for this part" -msgstr "" -"Tiefe Kopie ausführen. Dies wird alle Daten der Stückliste für dieses Teil " -"duplizieren" +msgstr "Stückliste für dieses Teil kopieren" #: part/forms.py:200 msgid "Copy BOM" -msgstr "BOM kopieren" +msgstr "Stückliste kopieren" #: part/forms.py:205 msgid "Duplicate all parameter data for this part" msgstr "" #: part/forms.py:206 -#, fuzzy -#| msgid "Parameters" msgid "Copy Parameters" -msgstr "Parameter" +msgstr "Parameter kopieren" #: part/forms.py:211 msgid "Confirm part creation" msgstr "Erstellen des Teils bestätigen" #: part/forms.py:216 -#, fuzzy -#| msgid "No part parameter templates found" msgid "Include category parameter templates" -msgstr "Keine Teilparametervorlagen gefunden" +msgstr "Kategorie Parameter-Vorlage einschließen" #: part/forms.py:221 -#, fuzzy -#| msgid "No part parameter templates found" msgid "Include parent categories parameter templates" -msgstr "Keine Teilparametervorlagen gefunden" +msgstr "Über-Kategorie Parameter-Vorlage einschließen" #: part/forms.py:301 -#, fuzzy -#| msgid "Parameter template name must be unique" msgid "Add parameter template to same level categories" -msgstr "Vorlagen-Name des Parameters muss eindeutig sein" +msgstr "Parameter-Vorlage zu Kategorien dieser Ebene hinzufügen" #: part/forms.py:305 -#, fuzzy -#| msgid "Parameter template name must be unique" msgid "Add parameter template to all categories" -msgstr "Vorlagen-Name des Parameters muss eindeutig sein" +msgstr "Parameter-Vorlage zu allen Kategorien hinzufügen" #: part/forms.py:350 msgid "Input quantity for price calculation" @@ -3129,20 +2746,18 @@ msgstr "Eintragsmenge zur Preisberechnung" #: part/models.py:72 msgid "Default location for parts in this category" -msgstr "Standard-Standort für Teile dieser Kategorie" +msgstr "Standard-Lagerort für Teile dieser Kategorie" #: part/models.py:75 msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:81 part/models.py:2098 -#: part/templates/part/part_app_base.html:9 +#: part/models.py:81 part/models.py:2098 part/templates/part/part_app_base.html:9 msgid "Part Category" msgstr "Teilkategorie" -#: part/models.py:82 part/templates/part/category.html:19 -#: part/templates/part/category.html:90 part/templates/part/category.html:141 -#: templates/InvenTree/search.html:126 templates/stats.html:39 +#: part/models.py:82 part/templates/part/category.html:19 part/templates/part/category.html:90 +#: part/templates/part/category.html:141 templates/InvenTree/search.html:126 templates/stats.html:39 #: users/models.py:32 msgid "Part Categories" msgstr "Teile-Kategorien" @@ -3153,20 +2768,16 @@ msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Teil '{p1}' wird in Stückliste für Teil '{p2}' benutzt (rekursiv)" #: part/models.py:554 -#, fuzzy -#| msgid "No serial numbers found" msgid "Next available serial numbers are" -msgstr "Keine Seriennummern gefunden" +msgstr "Nächste verfügbare Seriennummern wären" #: part/models.py:558 msgid "Next available serial number is" -msgstr "Nächste Seriennummer ist" +msgstr "Nächste verfügbare Seriennummer ist" #: part/models.py:563 -#, fuzzy -#| msgid "Empty serial number string" msgid "Most recent serial number is" -msgstr "Keine Seriennummer angegeben" +msgstr "Die neuste Seriennummer ist" #: part/models.py:642 msgid "Duplicate IPN not allowed in part settings" @@ -3200,8 +2811,7 @@ msgstr "Variante von" msgid "Part description" msgstr "Beschreibung des Teils" -#: part/models.py:715 part/templates/part/category.html:69 -#: part/templates/part/detail.html:67 +#: part/models.py:715 part/templates/part/category.html:69 part/templates/part/detail.html:67 msgid "Keywords" msgstr "Schlüsselwörter" @@ -3209,8 +2819,8 @@ msgstr "Schlüsselwörter" msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:723 part/templates/part/detail.html:73 -#: part/templates/part/set_category.html:15 templates/js/part.js:384 +#: part/models.py:723 part/templates/part/detail.html:73 part/templates/part/set_category.html:15 +#: templates/js/part.js:384 msgid "Category" msgstr "Kategorie" @@ -3218,8 +2828,8 @@ msgstr "Kategorie" msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:729 part/templates/part/detail.html:28 -#: part/templates/part/part_base.html:93 templates/js/part.js:160 +#: part/models.py:729 part/templates/part/detail.html:28 part/templates/part/part_base.html:93 +#: templates/js/part.js:160 msgid "IPN" msgstr "IPN (Interne Produktnummer)" @@ -3231,8 +2841,7 @@ msgstr "Interne Teilenummer" msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:737 part/templates/part/detail.html:35 report/models.py:181 -#: templates/js/part.js:164 +#: part/models.py:737 part/templates/part/detail.html:35 report/models.py:181 templates/js/part.js:164 msgid "Revision" msgstr "Revision" @@ -3242,15 +2851,15 @@ msgstr "Wo wird dieses Teil normalerweise gelagert?" #: part/models.py:805 part/templates/part/detail.html:97 msgid "Default Supplier" -msgstr "Standard-Zulieferer" +msgstr "Standard Zulieferer" #: part/models.py:806 msgid "Default supplier part" -msgstr "Standard-Zulieferer" +msgstr "Standard Zulieferer-Teil" #: part/models.py:813 msgid "Default Expiry" -msgstr "Standard-Ablaufzeit" +msgstr "Standard Ablaufzeit" #: part/models.py:814 msgid "Expiry time (in days) for stock items of this part" @@ -3264,8 +2873,7 @@ msgstr "Minimaler Lagerbestand" msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Lagerbestand" -#: part/models.py:826 part/templates/part/detail.html:106 -#: part/templates/part/params.html:29 +#: part/models.py:826 part/templates/part/detail.html:106 part/templates/part/params.html:29 msgid "Units" msgstr "Einheiten" @@ -3293,9 +2901,8 @@ msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:859 part/templates/part/detail.html:227 -#: templates/js/table_filters.js:20 templates/js/table_filters.js:60 -#: templates/js/table_filters.js:209 templates/js/table_filters.js:278 +#: part/models.py:859 part/templates/part/detail.html:227 templates/js/table_filters.js:20 +#: templates/js/table_filters.js:60 templates/js/table_filters.js:209 templates/js/table_filters.js:278 msgid "Active" msgstr "Aktiv" @@ -3316,57 +2923,40 @@ msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" #: part/models.py:1926 -#, 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" +msgstr "Test-Vorlagen können nur für verfolgbare Teile angelegt werden" #: part/models.py:1943 -#, fuzzy -#| msgid "" -#| "A stock item with this serial number already exists for template part " -#| "{part}" msgid "Test with this name already exists for this part" -msgstr "" -"Ein Teil mit dieser Seriennummer existiert bereits für die Teilevorlage " -"{part}" +msgstr "Ein Test mit diesem Namen besteht bereits für dieses Teil" #: part/models.py:1962 templates/js/part.js:561 templates/js/stock.js:104 -#, fuzzy -#| msgid "Instance Name" msgid "Test Name" -msgstr "Instanzname" +msgstr "Test-Name" #: part/models.py:1963 -#, fuzzy -#| msgid "Serial number for this item" msgid "Enter a name for the test" -msgstr "Seriennummer für dieses Teil" +msgstr "Namen für diesen Test eingeben" #: part/models.py:1968 -#, fuzzy -#| msgid "Description" msgid "Test Description" -msgstr "Beschreibung" +msgstr "Test-Beschreibung" #: part/models.py:1969 -#, fuzzy -#| msgid "Brief description of the build" msgid "Enter description for this test" -msgstr "Kurze Beschreibung des Baus" +msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:1974 templates/js/part.js:570 -#: templates/js/table_filters.js:195 +#: part/models.py:1974 templates/js/part.js:570 templates/js/table_filters.js:195 msgid "Required" msgstr "benötigt" #: part/models.py:1975 msgid "Is this test required to pass?" -msgstr "" +msgstr "Muss dieser Test erfolgreich sein?" #: part/models.py:1980 templates/js/part.js:578 msgid "Requires Value" -msgstr "ein Wert mus angegeben werden" +msgstr "verpflichtender Wert" #: part/models.py:1981 msgid "Does this test require a value when adding a test result?" @@ -3392,8 +2982,7 @@ msgstr "Name des Parameters" msgid "Parameter Units" msgstr "Parameter Einheit" -#: part/models.py:2055 part/models.py:2103 -#: templates/InvenTree/settings/category.html:62 +#: part/models.py:2055 part/models.py:2103 templates/InvenTree/settings/category.html:62 msgid "Parameter Template" msgstr "Parameter Vorlage" @@ -3402,10 +2991,8 @@ msgid "Parameter Value" msgstr "Parameter Wert" #: part/models.py:2107 -#, fuzzy -#| msgid "Parameter Value" msgid "Default Parameter Value" -msgstr "Parameter Wert" +msgstr "Standard Parameter Wert" #: part/models.py:2135 msgid "Select parent part" @@ -3420,10 +3007,8 @@ msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" #: part/models.py:2151 -#, fuzzy -#| msgid "Confim BOM item deletion" msgid "This BOM item is optional" -msgstr "Löschung von BOM-Position bestätigen" +msgstr "Diese Stücklisten-Position ist optional" #: part/models.py:2154 msgid "Estimated build wastage quantity (absolute or percentage)" @@ -3431,41 +3016,35 @@ msgstr "Geschätzter Ausschuss (absolut oder prozentual)" #: part/models.py:2157 msgid "BOM item reference" -msgstr "Referenz des Objekts auf der Stückliste" +msgstr "Referenz der Postion auf der Stückliste" #: part/models.py:2160 msgid "BOM item notes" -msgstr "Notizen zum Stücklisten-Objekt" +msgstr "Notizen zur Stücklisten-Position" #: part/models.py:2162 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:2166 templates/js/bom.js:275 templates/js/bom.js:282 -#: templates/js/table_filters.js:50 +#: part/models.py:2166 templates/js/bom.js:275 templates/js/bom.js:282 templates/js/table_filters.js:50 msgid "Inherited" msgstr "" #: part/models.py:2167 msgid "This BOM item is inherited by BOMs for variant parts" -msgstr "" +msgstr "Diese Stücklisten-Position wird in dei Stücklisten von Teil-Varianten vererbt" -#: part/models.py:2243 part/views.py:1485 part/views.py:1537 -#: stock/models.py:259 -#, fuzzy -#| msgid "Overage must be an integer value or a percentage" +#: part/models.py:2243 part/views.py:1485 part/views.py:1537 stock/models.py:259 msgid "Quantity must be integer value for trackable parts" -msgstr "Überschuss muss eine Ganzzahl oder ein Prozentwert sein" +msgstr "Menge muss eine Ganzzahl sein" #: part/models.py:2252 part/models.py:2254 -#, fuzzy -#| msgid "Supplier part description" msgid "Sub part must be specified" -msgstr "Zuliefererbeschreibung des Teils" +msgstr "Zulieferer-Teil muss festgelegt sein" #: part/models.py:2257 msgid "BOM Item" -msgstr "Stücklistenposition" +msgstr "Stücklisten-Position" #: part/models.py:2378 msgid "Select Related Part" @@ -3473,30 +3052,25 @@ msgstr "verknüpftes Teil auswählen" #: part/models.py:2410 msgid "" -"Error creating relationship: check that the part is not related to itself " -"and that the relationship is unique" +"Error creating relationship: check that the part is not related to itself and that the relationship is " +"unique" msgstr "" #: part/templates/part/allocation.html:11 msgid "Part Stock Allocations" -msgstr "Teilbestandszuordnungen" +msgstr "Teil-Bestandszuordnungen" -#: part/templates/part/allocation.html:17 -#: part/templates/part/allocation.html:45 +#: part/templates/part/allocation.html:17 part/templates/part/allocation.html:45 msgid "Order" msgstr "Bestellung" -#: part/templates/part/allocation.html:18 -#: part/templates/part/allocation.html:24 -#: part/templates/part/allocation.html:31 -#: part/templates/part/allocation.html:49 -#: stock/templates/stock/item_base.html:8 -#: stock/templates/stock/item_base.html:89 -#: stock/templates/stock/item_base.html:318 -#: stock/templates/stock/stock_adjust.html:16 templates/js/build.js:771 -#: templates/js/stock.js:923 templates/js/stock.js:1181 +#: part/templates/part/allocation.html:18 part/templates/part/allocation.html:24 +#: part/templates/part/allocation.html:31 part/templates/part/allocation.html:49 +#: stock/templates/stock/item_base.html:8 stock/templates/stock/item_base.html:89 +#: stock/templates/stock/item_base.html:318 stock/templates/stock/stock_adjust.html:16 +#: templates/js/build.js:771 templates/js/stock.js:923 templates/js/stock.js:1181 msgid "Stock Item" -msgstr "Lagerobjekt" +msgstr "BestandsObjekt" #: part/templates/part/attachments.html:10 msgid "Part Attachments" @@ -3504,14 +3078,13 @@ msgstr "Anhänge" #: part/templates/part/bom-delete.html:6 msgid "Are you sure you want to delete this BOM item?" -msgstr "Sind Sie sicher, dass Sie diese Stücklistenposition löschen wollen?" +msgstr "Sind Sie sicher, dass Sie diese Stücklisten-Position löschen wollen?" #: part/templates/part/bom-delete.html:8 msgid "Deleting this entry will remove the BOM row from the following part" -msgstr "" +msgstr "Die Löschung dieses Eintrags wird das Stücklisten-Position vom folgenden Teil entfernen" -#: part/templates/part/bom.html:10 part/templates/part/navbar.html:48 -#: part/templates/part/navbar.html:51 +#: part/templates/part/bom.html:10 part/templates/part/navbar.html:48 part/templates/part/navbar.html:51 msgid "Bill of Materials" msgstr "Stückliste" @@ -3529,7 +3102,7 @@ msgstr "Stückliste von übergeordnetem Teil kopieren" #: part/templates/part/bom.html:43 msgid "New BOM Item" -msgstr "Neue Stücklistenposition" +msgstr "Neue Stücklisten-Position" #: part/templates/part/bom.html:46 msgid "Finish Editing" @@ -3549,18 +3122,17 @@ msgstr "Stückliste exportieren" #: part/templates/part/bom.html:64 msgid "Print BOM Report" -msgstr "BOM Report drucken" +msgstr "Stücklisten-Bericht drucken" #: part/templates/part/bom.html:109 msgid "Delete selected BOM items?" -msgstr "Ausgewählte Stücklistenpositionen löschen" +msgstr "Ausgewählte Stücklistenpositionen löschen?" #: part/templates/part/bom.html:110 msgid "All selected BOM items will be deleted" msgstr "Alle ausgewählte Stücklistenpositionen werden gelöscht" -#: part/templates/part/bom.html:160 part/views.py:579 -#: templates/js/stock.js:1077 +#: part/templates/part/bom.html:160 part/views.py:579 templates/js/stock.js:1077 msgid "Create New Part" msgstr "Neues Teil anlegen" @@ -3569,8 +3141,7 @@ msgid "This part already has a Bill of Materials" msgstr "Dieses Teil hat bereits eine Stückliste" #: part/templates/part/bom_upload/select_fields.html:11 -#: part/templates/part/bom_upload/select_parts.html:11 -#: part/templates/part/bom_upload/upload_file.html:11 +#: part/templates/part/bom_upload/select_parts.html:11 part/templates/part/bom_upload/upload_file.html:11 msgid "Upload Bill of Materials" msgstr "Stückliste hochladen" @@ -3616,8 +3187,7 @@ msgstr "Stückliste abschicken" msgid "Row" msgstr "Zeile" -#: part/templates/part/bom_upload/select_parts.html:40 -#: part/templates/part/bom_upload/select_parts.html:69 +#: part/templates/part/bom_upload/select_parts.html:40 part/templates/part/bom_upload/select_parts.html:69 msgid "Select Part" msgstr "Teil auswählen" @@ -3625,23 +3195,21 @@ msgstr "Teil auswählen" msgid "Remove row" msgstr "Zeile entfernen" -#: part/templates/part/bom_upload/select_parts.html:65 -#: part/templates/part/category.html:117 +#: part/templates/part/bom_upload/select_parts.html:65 part/templates/part/category.html:117 msgid "Create new part" msgstr "Neues Teil anlegen" #: part/templates/part/bom_upload/upload_file.html:16 msgid "Step 1 - Select BOM File" -msgstr "Schritt 1 - Stückliste auswählen" +msgstr "Schritt 1 - Stückliste-Datei auswählen" #: part/templates/part/bom_upload/upload_file.html:19 msgid "Requirements for BOM upload" -msgstr "" +msgstr "Anforderungen für Stückliste-Datei" #: part/templates/part/bom_upload/upload_file.html:21 -msgid "" -"The BOM file must contain the required named columns as provided in the " -msgstr "" +msgid "The BOM file must contain the required named columns as provided in the " +msgstr "Die Stückliste-Datei muss die aufgeführten Spalten enthalten; siehe" #: part/templates/part/bom_upload/upload_file.html:21 msgid "BOM Upload Template" @@ -3713,7 +3281,7 @@ msgstr "Exportieren" #: part/templates/part/category.html:198 templates/js/stock.js:705 msgid "Create new location" -msgstr "Neuen Standort anlegen" +msgstr "Neuen Lagerort anlegen" #: part/templates/part/category.html:203 part/templates/part/category.html:233 msgid "New Category" @@ -3721,44 +3289,33 @@ msgstr "Neue Kategorie" #: part/templates/part/category.html:204 msgid "Create new category" -msgstr "Teilkategorie anlegen" +msgstr "Teil-Kategorie anlegen" #: part/templates/part/category.html:234 -#, fuzzy -#| msgid "Create new part category" msgid "Create new Part Category" -msgstr "Teilkategorie anlegen" +msgstr "Neue Teil-Kategorie anlegen" #: part/templates/part/category.html:240 stock/views.py:1358 msgid "Create new Stock Location" -msgstr "Neuen Lager-Standort erstellen" +msgstr "Neuen Lagerort erstellen" #: part/templates/part/category_delete.html:5 msgid "Are you sure you want to delete category" msgstr "Sind Sie sicher, dass Sie diese Kategorie löschen wollen" -#: part/templates/part/category_delete.html:8 -#: part/templates/part/category_delete.html:25 -#, fuzzy -#| msgid "Category Details" +#: part/templates/part/category_delete.html:8 part/templates/part/category_delete.html:25 msgid "This category contains" msgstr "Kategorie enthält" #: part/templates/part/category_delete.html:8 -#, fuzzy -#| msgid "Part Categories" msgid "child categories" msgstr "Unter-Kategorien" #: part/templates/part/category_delete.html:9 -msgid "" -"If this category is deleted, these child categories will be moved to the" -msgstr "" -"Wenn diese Kategorie gelöscht wird, werden alle Unter-Kat. verschoben nach" +msgid "If this category is deleted, these child categories will be moved to the" +msgstr "Wenn diese Kategorie gelöscht wird, werden alle Unter-Kat. verschoben nach" #: part/templates/part/category_delete.html:11 -#, fuzzy -#| msgid "Category" msgid "category" msgstr "Kategorie" @@ -3767,38 +3324,24 @@ msgid "top level Parts category" msgstr "oberste Teilekategorie" #: part/templates/part/category_delete.html:25 -#, fuzzy -#| msgid "Parts" msgid "parts" msgstr "Teile" #: part/templates/part/category_delete.html:27 -#, fuzzy -#| msgid "" -#| "If this category is deleted, these child categories will be moved to the" -msgid "" -"If this category is deleted, these parts will be moved to the parent category" -msgstr "" -"Wenn diese Kategorie gelöscht wird, werden alle Unter-Kat. verschoben nach" +msgid "If this category is deleted, these parts will be moved to the parent category" +msgstr "Wenn diese Kat. gelöscht wird, werden diese Teile in die übergeordnete Kat. verschoben" #: part/templates/part/category_delete.html:29 -#, fuzzy -#| msgid "" -#| "If this category is deleted, these child categories will be moved to the" -msgid "" -"If this category is deleted, these parts will be moved to the top-level " -"category Teile" -msgstr "" -"Wenn diese Kategorie gelöscht wird, werden alle Unter-Kat. verschoben nach" +msgid "If this category is deleted, these parts will be moved to the top-level category Teile" +msgstr "Wenn diese Kat. gelöscht wird, werden diese Teile in die oberste Kat. verschoben" -#: part/templates/part/category_navbar.html:18 -#: part/templates/part/category_navbar.html:21 +#: part/templates/part/category_navbar.html:18 part/templates/part/category_navbar.html:21 #: part/templates/part/navbar.html:22 msgid "Parameters" msgstr "Parameter" -#: part/templates/part/category_parametric.html:10 -#: part/templates/part/navbar.html:19 part/templates/part/params.html:10 +#: part/templates/part/category_parametric.html:10 part/templates/part/navbar.html:19 +#: part/templates/part/params.html:10 msgid "Part Parameters" msgstr "Teilparameter" @@ -3810,21 +3353,17 @@ msgstr "Teil duplizieren" msgid "Make a copy of part" msgstr "" -#: part/templates/part/copy_part.html:14 -#: part/templates/part/create_part.html:11 +#: part/templates/part/copy_part.html:14 part/templates/part/create_part.html:11 msgid "Possible Matching Parts" msgstr "Evtl. passende Teile" -#: part/templates/part/copy_part.html:15 -#: part/templates/part/create_part.html:12 +#: part/templates/part/copy_part.html:15 part/templates/part/create_part.html:12 msgid "The new part may be a duplicate of these existing parts" msgstr "Teil evtl. Duplikat dieser Teile" #: part/templates/part/create_part.html:16 -#, fuzzy -#| msgid "Batch" msgid "match" -msgstr "Los" +msgstr "entspricht" #: part/templates/part/detail.html:11 part/templates/part/navbar.html:11 msgid "Part Details" @@ -3839,10 +3378,8 @@ msgid "No serial numbers recorded" msgstr "Keine Seriennummern gefunden" #: part/templates/part/detail.html:120 -#, fuzzy -#| msgid "Stock Export Options" msgid "Stock Expiry Time" -msgstr "Lagerbestandsexportoptionen" +msgstr "Bestands-Ablauf Zeit" #: part/templates/part/detail.html:126 templates/js/order.js:293 msgid "Creation Date" @@ -3869,10 +3406,8 @@ msgid "Part is a template part (variants can be made from this part)" msgstr "Teil ist Vorlage (Varianten können von diesem Teil erstellt werden)" #: part/templates/part/detail.html:165 -#, fuzzy -#| msgid "Part is not a virtual part" msgid "Part is not a template part" -msgstr "Teil ist nicht virtuell" +msgstr "Teil ist kein Vorlage-Teil" #: part/templates/part/detail.html:173 msgid "Part can be assembled from other parts" @@ -3892,11 +3427,11 @@ msgstr "Teil kann nicht in Baugruppen benutzt werden" #: part/templates/part/detail.html:193 msgid "Part stock is tracked by serial number" -msgstr "Teilebestand in der Seriennummer hinterlegt" +msgstr "Teilebestand wird per Seriennummer verfolgt" #: part/templates/part/detail.html:195 msgid "Part stock is not tracked by serial number" -msgstr "Teilebestand ist nicht in der Seriennummer hinterlegt" +msgstr "Teilebestand wird nicht per Seriennummer verfolgt" #: part/templates/part/detail.html:203 part/templates/part/detail.html:205 msgid "Part can be purchased from external suppliers" @@ -3915,16 +3450,12 @@ msgid "Part is active" msgstr "Teil ist aktiv" #: part/templates/part/detail.html:232 -#, fuzzy -#| msgid "This part is not active" msgid "Part is not active" -msgstr "Dieses Teil ist nicht aktiv" +msgstr "Teil ist nicht aktiv" #: part/templates/part/navbar.html:26 part/templates/part/variants.html:11 -#, fuzzy -#| msgid "Variants" msgid "Part Variants" -msgstr "Varianten" +msgstr "Teil Varianten" #: part/templates/part/navbar.html:29 msgid "Variants" @@ -3951,10 +3482,8 @@ msgid "Sale Price" msgstr "VK-Preis" #: part/templates/part/navbar.html:100 part/templates/part/part_tests.html:10 -#, fuzzy -#| msgid "Parameter Template" msgid "Part Test Templates" -msgstr "Parameter Vorlage" +msgstr "Teil Test-Vorlagen" #: part/templates/part/navbar.html:103 stock/templates/stock/item_base.html:376 msgid "Tests" @@ -3973,16 +3502,13 @@ msgstr "Teil-Bemerkungen" msgid "Add new parameter" msgstr "Parameter hinzufügen" -#: part/templates/part/params.html:18 -#: templates/InvenTree/settings/category.html:29 +#: part/templates/part/params.html:18 templates/InvenTree/settings/category.html:29 #: templates/InvenTree/settings/part.html:43 msgid "New Parameter" msgstr "Neuer Parameter" -#: part/templates/part/params.html:28 -#: report/templates/report/inventree_test_report_base.html:90 -#: stock/models.py:1650 templates/InvenTree/settings/header.html:8 -#: templates/js/stock.js:124 +#: part/templates/part/params.html:28 report/templates/report/inventree_test_report_base.html:90 +#: stock/models.py:1650 templates/InvenTree/settings/header.html:8 templates/js/stock.js:124 msgid "Value" msgstr "Wert" @@ -4003,8 +3529,8 @@ msgstr "Teileliste" msgid "This part is a variant of" msgstr "Dieses Teil ist eine Variante von" -#: part/templates/part/part_base.html:32 templates/js/company.js:155 -#: templates/js/part.js:75 templates/js/part.js:152 +#: part/templates/part/part_base.html:32 templates/js/company.js:155 templates/js/part.js:75 +#: templates/js/part.js:152 msgid "Inactive" msgstr "Inaktiv" @@ -4012,20 +3538,17 @@ msgstr "Inaktiv" msgid "Star this part" msgstr "Teil favorisieren" -#: part/templates/part/part_base.html:46 -#: stock/templates/stock/item_base.html:127 +#: part/templates/part/part_base.html:46 stock/templates/stock/item_base.html:127 #: stock/templates/stock/location.html:44 msgid "Barcode actions" msgstr "Barcode Aktionen" -#: part/templates/part/part_base.html:48 -#: stock/templates/stock/item_base.html:129 +#: part/templates/part/part_base.html:48 stock/templates/stock/item_base.html:129 #: stock/templates/stock/location.html:46 msgid "Show QR Code" msgstr "QR-Code anzeigen" -#: part/templates/part/part_base.html:49 -#: stock/templates/stock/item_base.html:145 +#: part/templates/part/part_base.html:49 stock/templates/stock/item_base.html:145 #: stock/templates/stock/location.html:47 msgid "Print Label" msgstr "Label drucken" @@ -4064,7 +3587,7 @@ msgstr "Für Bauaufträge benötigt" #: part/templates/part/part_base.html:142 msgid "Required for Sales Orders" -msgstr "Bneötigt für VK-Aufträge" +msgstr "Benötigt für Aufträge" #: part/templates/part/part_base.html:149 msgid "Allocated to Orders" @@ -4100,7 +3623,7 @@ msgstr "VK-Preis Informationen" #: part/templates/part/sales_orders.html:18 msgid "New sales order" -msgstr "Neuer VK-Auftrag" +msgstr "Neuer Auftrag" #: part/templates/part/sales_orders.html:18 msgid "New Order" @@ -4122,8 +3645,7 @@ msgstr "Teilbestand" msgid "Showing stock for all variants of" msgstr "Lagerbestand aller Varianten von" -#: part/templates/part/stock_count.html:7 templates/js/bom.js:239 -#: templates/js/part.js:421 +#: part/templates/part/stock_count.html:7 templates/js/bom.js:239 templates/js/part.js:421 msgid "No Stock" msgstr "Kein Bestand" @@ -4266,23 +3788,23 @@ msgstr "Teileigenschaften bearbeiten" #: part/views.py:923 msgid "Duplicate BOM" -msgstr "BOM duplizieren" +msgstr "Stückliste duplizieren" #: part/views.py:953 msgid "Confirm duplication of BOM from parent" -msgstr "bestätige Duplizierung BOM von Übergeordneter BOM" +msgstr "bestätige Duplizierung Stückliste von übergeordneter Stückliste" #: part/views.py:974 msgid "Validate BOM" -msgstr "BOM überprüfen" +msgstr "Stückliste überprüfen" #: part/views.py:995 msgid "Confirm that the BOM is valid" -msgstr "Bestätigen, dass BOM korrekt ist" +msgstr "Bestätigen, dass Stückliste korrekt ist" #: part/views.py:1006 msgid "Validated Bill of Materials" -msgstr "überprüfte Stückliste (BOM)" +msgstr "überprüfte Stückliste" #: part/views.py:1140 msgid "No BOM file provided" @@ -4374,15 +3896,15 @@ msgstr "Kategorieparametervorlage löschen" #: part/views.py:2377 msgid "Create BOM Item" -msgstr "BOM-Position anlegen" +msgstr "Stücklisten-Position anlegen" #: part/views.py:2447 msgid "Edit BOM item" -msgstr "BOM-Position bearbeiten" +msgstr "Stücklisten-Position bearbeiten" #: part/views.py:2503 msgid "Confim BOM item deletion" -msgstr "löschen von BOM-Position bestätigen" +msgstr "löschen von Stücklisten-Position bestätigen" #: report/models.py:163 msgid "Template name" @@ -4414,7 +3936,7 @@ msgstr "einfügen Installiert in Tests" #: report/models.py:287 msgid "Include test results for stock items installed inside assembled item" -msgstr "" +msgstr "Test-Ergebnisse für BestandsObjekte in Baugruppen einschließen" #: report/models.py:330 msgid "Build Filters" @@ -4458,24 +3980,22 @@ msgstr "benötigt für" #: report/templates/report/inventree_test_report_base.html:21 msgid "Stock Item Test Report" -msgstr "Lagerobjekte Test Report" +msgstr "BestandsObjekt Test-Bericht" #: report/templates/report/inventree_test_report_base.html:83 msgid "Test Results" msgstr "Testergebnisse" -#: report/templates/report/inventree_test_report_base.html:88 -#: stock/models.py:1638 +#: report/templates/report/inventree_test_report_base.html:88 stock/models.py:1638 msgid "Test" msgstr "Test" -#: report/templates/report/inventree_test_report_base.html:89 -#: stock/models.py:1644 +#: report/templates/report/inventree_test_report_base.html:89 stock/models.py:1644 msgid "Result" msgstr "Ergebnis" -#: report/templates/report/inventree_test_report_base.html:92 -#: templates/js/order.js:195 templates/js/stock.js:905 +#: report/templates/report/inventree_test_report_base.html:92 templates/js/order.js:195 +#: templates/js/stock.js:905 msgid "Date" msgstr "Datum" @@ -4493,15 +4013,15 @@ msgstr "Eindeutige Seriennummern eingeben (oder leer lassen)" #: stock/forms.py:202 stock/forms.py:258 msgid "Select test report template" -msgstr "Test Report Vorlage auswählen" +msgstr "Test Bericht Vorlage auswählen" #: stock/forms.py:266 msgid "Include stock items in sub locations" -msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" +msgstr "BestandsObjekt in untergeordneten Lagerorten einschließen" #: stock/forms.py:301 msgid "Stock item to install" -msgstr "Lagerobjekte zum verbauen" +msgstr "BestandsObjekt zum verbauen" #: stock/forms.py:308 msgid "Stock quantity to assign" @@ -4525,7 +4045,7 @@ msgstr "nicht mehr verbauen bestätigen" #: stock/forms.py:350 msgid "Confirm removal of installed stock items" -msgstr "entfernen der verbauten Lagerobjekte bestätigen" +msgstr "Entfernen der verbauten BestandsObjekt bestätigen" #: stock/forms.py:374 msgid "Destination stock location" @@ -4541,7 +4061,7 @@ msgstr "Bestands-Anpassung bestätigen" #: stock/forms.py:380 msgid "Confirm movement of stock items" -msgstr "Bewegung der Lagerobjekte bestätigen" +msgstr "Verschieben der BestandsObjekt bestätigen" #: stock/forms.py:382 msgid "Set Default Location" @@ -4549,15 +4069,15 @@ msgstr "Standard-Lagerort ändern" #: stock/forms.py:382 msgid "Set the destination as the default location for selected parts" -msgstr "Setze das Ziel als Standard-Ziel für ausgewählte Teile" +msgstr "Setze das Ziel als Standard-Lagerort für ausgewählte Teile" #: stock/models.py:204 msgid "Created stock item" -msgstr "Neues Lagerobjekt erstellt" +msgstr "Neues BestandsObjekt erstellt" #: stock/models.py:240 msgid "StockItem with this serial number already exists" -msgstr "Ein Lagerobjekt mit dieser Seriennummer existiert bereits" +msgstr "Ein BestandsObjekt mit dieser Seriennummer existiert bereits" #: stock/models.py:276 #, python-brace-format @@ -4570,8 +4090,7 @@ msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein" #: stock/models.py:287 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" +msgstr "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als 1 ist" #: stock/models.py:309 msgid "Item cannot belong to itself" @@ -4587,7 +4106,7 @@ msgstr "" #: stock/models.py:362 msgid "Parent Stock Item" -msgstr "Eltern-Lagerobjekt" +msgstr "Eltern-BestandsObjekt" #: stock/models.py:371 msgid "Base part" @@ -4595,11 +4114,11 @@ msgstr "Basis-Teil" #: stock/models.py:380 msgid "Select a matching supplier part for this stock item" -msgstr "Passenden Zulieferer für dieses Lagerobjekt auswählen" +msgstr "Passendes Zulieferer-Teil für dieses BestandsObjekt auswählen" #: stock/models.py:385 stock/templates/stock/stock_app_base.html:7 msgid "Stock Location" -msgstr "Lagerort" +msgstr "Bestand-Lagerort" #: stock/models.py:388 msgid "Where is this stock item located?" @@ -4607,7 +4126,7 @@ msgstr "Wo wird dieses Teil normalerweise gelagert?" #: stock/models.py:395 msgid "Packaging this stock item is stored in" -msgstr "Die Verpackung dieses Lagerartikels ist gespeichert in" +msgstr "Die Verpackung dieses BestandsObjekt ist gelagert in" #: stock/models.py:400 stock/templates/stock/item_base.html:249 msgid "Installed In" @@ -4623,7 +4142,7 @@ msgstr "Seriennummer für dieses Teil" #: stock/models.py:431 msgid "Batch code for this stock item" -msgstr "Losnummer für dieses Lagerobjekt" +msgstr "Losnummer für dieses BestandsObjekt" #: stock/models.py:435 msgid "Stock Quantity" @@ -4635,40 +4154,35 @@ msgstr "Quellbau" #: stock/models.py:446 msgid "Build for this stock item" -msgstr "Bau für dieses Lagerobjekt" +msgstr "Bau für dieses BestandsObjekt" #: stock/models.py:457 msgid "Source Purchase Order" -msgstr "Quelle EK-Bestellung" +msgstr "Quelle Bestellung" #: stock/models.py:460 msgid "Purchase order for this stock item" -msgstr "EK-Bestellung für dieses Teil" +msgstr "Bestellung für dieses BestandsObjekt" #: stock/models.py:466 msgid "Destination Sales Order" -msgstr "für VK-Auftrag" +msgstr "Ziel-Auftrag" -#: stock/models.py:472 stock/templates/stock/item_base.html:343 -#: templates/js/stock.js:652 +#: stock/models.py:472 stock/templates/stock/item_base.html:343 templates/js/stock.js:652 msgid "Expiry Date" msgstr "Ablaufdatum" #: stock/models.py:473 -msgid "" -"Expiry date for stock item. Stock will be considered expired after this date" -msgstr "" -"Ablaufdatum für Lagerobjekt. Bestand wird danach als abgelaufen " -"gekennzeichnet" +msgid "Expiry date for stock item. Stock will be considered expired after this date" +msgstr "Ablaufdatum für BestandsObjekt. Bestand wird danach als abgelaufen gekennzeichnet" #: stock/models.py:486 msgid "Delete this Stock Item when stock is depleted" -msgstr "Objekt löschen wenn Lagerbestand aufgebraucht" +msgstr "Dieses BestandsObjekt löschen wenn Bestand aufgebraucht" -#: stock/models.py:496 stock/templates/stock/item_notes.html:13 -#: stock/templates/stock/navbar.html:54 +#: stock/models.py:496 stock/templates/stock/item_notes.html:13 stock/templates/stock/navbar.html:54 msgid "Stock Item Notes" -msgstr "Lagerobjekt-Notizen" +msgstr "BestandsObjekt-Notizen" #: stock/models.py:506 msgid "Single unit purchase price at time of purchase" @@ -4692,19 +4206,19 @@ msgstr "zurück ins Lager" #: stock/models.py:787 msgid "Installed into stock item" -msgstr "Im Lagerobjekt verbaut" +msgstr "In BestandsObjekt verbaut" #: stock/models.py:795 msgid "Installed stock item" -msgstr "verbautes Lagerobjekt" +msgstr "verbautes BestandsObjekt" #: stock/models.py:819 msgid "Uninstalled stock item" -msgstr "unverbautes Lagerobjekt" +msgstr "BestandsObjekt ausgebaut" #: stock/models.py:838 msgid "Uninstalled into location" -msgstr "verbaut in Lagerort" +msgstr "ausgebaut nach Lagerort" #: stock/models.py:939 msgid "Part is not set as trackable" @@ -4742,7 +4256,7 @@ msgstr "aufteilen vom vorhandenen Bestand" #: stock/models.py:1108 msgid "StockItem cannot be moved as it is not in stock" -msgstr "Lagerobjekt kann nicht bewegt werden, da kein Bestand vorhanden ist" +msgstr "BestandsObjekt kann nicht bewegt werden, da kein Bestand vorhanden ist" #: stock/models.py:1551 msgid "Tracking entry title" @@ -4798,68 +4312,57 @@ msgstr "neuer Eintrag" #: stock/templates/stock/item_attachments.html:11 msgid "Stock Item Attachments" -msgstr "Lagerobjekt-Anhang" +msgstr "BestandsObjekt-Anhang" #: stock/templates/stock/item_base.html:24 -msgid "" -"You are not in the list of owners of this item. This stock item cannot be " -"edited." -msgstr "" -"Sie gehören nicht zu den Eigentümern dieses Objekts und können es nicht " -"ändern." +msgid "You are not in the list of owners of this item. This stock item cannot be edited." +msgstr "Sie gehören nicht zu den Eigentümern dieses Objekts und können es nicht ändern." #: stock/templates/stock/item_base.html:31 msgid "This stock item is in production and cannot be edited." -msgstr "" -"Dieses Lagerobjekt wird gerade hergestellt und kann nicht geändert werden." +msgstr "Dieses BestandsObjekt wird gerade hergestellt und kann nicht geändert werden." #: stock/templates/stock/item_base.html:32 msgid "Edit the stock item from the build view." -msgstr "ändern des Lagerobjekts in der Bau Ansicht." +msgstr "Ändern des BestandsObjekts in der Bau Ansicht." #: stock/templates/stock/item_base.html:45 msgid "This stock item has not passed all required tests" -msgstr "Dieses Lagerobjekt hat nicht alle Tests bestanden" +msgstr "Dieses BestandsObjekt hat nicht alle Tests bestanden" #: stock/templates/stock/item_base.html:51 msgid "This stock item is allocated to Sales Order" -msgstr "Dieses Lagerobjekt ist dem VK-Auftrag zugewiesen" +msgstr "Dieses BestandsObjekt ist einem Auftrag zugewiesen" #: stock/templates/stock/item_base.html:57 msgid "This stock item is allocated to Build" -msgstr "Dieses Lagerobjekt ist dem Bau zugewiesen" +msgstr "Dieses BestandsObjekt ist dem Bau zugewiesen" #: stock/templates/stock/item_base.html:63 -msgid "" -"This stock item is serialized - it has a unique serial number and the " -"quantity cannot be adjusted." +msgid "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted." msgstr "" -"Dieses Lagerobjekt ist serialisiert. Es hat eine eindeutige Seriennummer und " -"die Anzahl kann nicht angepasst werden." +"Dieses BestandsObjekt ist serialisiert. Es hat eine eindeutige Seriennummer und die Anzahl kann nicht " +"angepasst werden." #: stock/templates/stock/item_base.html:67 msgid "This stock item cannot be deleted as it has child items" -msgstr "Dieses Lagerobjekt kann nicht gelöscht werden, da es Kinder besitzt" +msgstr "Dieses BestandsObjekt kann nicht gelöscht werden, da es Kinder besitzt" #: stock/templates/stock/item_base.html:71 -msgid "" -"This stock item will be automatically deleted when all stock is depleted." -msgstr "" -"Dieses Lagerobjekt wird automatisch gelöscht wenn der Lagerbestand " -"aufgebraucht ist." +msgid "This stock item will be automatically deleted when all stock is depleted." +msgstr "Dieses BestandsObjekt wird automatisch gelöscht wenn der Lagerbestand aufgebraucht ist." -#: stock/templates/stock/item_base.html:91 -#: stock/templates/stock/item_base.html:347 templates/js/table_filters.js:118 +#: stock/templates/stock/item_base.html:91 stock/templates/stock/item_base.html:347 +#: templates/js/table_filters.js:118 msgid "Expired" msgstr "abgelaufen" -#: stock/templates/stock/item_base.html:95 -#: stock/templates/stock/item_base.html:349 templates/js/table_filters.js:123 +#: stock/templates/stock/item_base.html:95 stock/templates/stock/item_base.html:349 +#: templates/js/table_filters.js:123 msgid "Stale" msgstr "überfällig" -#: stock/templates/stock/item_base.html:132 templates/js/barcode.js:309 -#: templates/js/barcode.js:314 +#: stock/templates/stock/item_base.html:132 templates/js/barcode.js:309 templates/js/barcode.js:314 msgid "Unlink Barcode" msgstr "Barcode abhängen" @@ -4875,8 +4378,7 @@ msgstr "zu Lagerort einscannen" msgid "Printing actions" msgstr "Druck Aktionen" -#: stock/templates/stock/item_base.html:147 -#: stock/templates/stock/item_tests.html:27 +#: stock/templates/stock/item_base.html:147 stock/templates/stock/item_tests.html:27 msgid "Test Report" msgstr "Test Report" @@ -4884,8 +4386,8 @@ msgstr "Test Report" msgid "Stock adjustment actions" msgstr "Bestands-Anpassungs Aktionen" -#: stock/templates/stock/item_base.html:160 -#: stock/templates/stock/location.html:58 templates/stock_table.html:55 +#: stock/templates/stock/item_base.html:160 stock/templates/stock/location.html:58 +#: templates/stock_table.html:55 msgid "Count stock" msgstr "Bestand zählen" @@ -4914,19 +4416,16 @@ msgid "Return to stock" msgstr "zu Bestand zurückgeben" #: stock/templates/stock/item_base.html:177 templates/js/stock.js:1218 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Uninstall stock item" -msgstr "In Lagerobjekt installiert" +msgstr "BestandsObjekt deinstallieren" #: stock/templates/stock/item_base.html:177 msgid "Uninstall" -msgstr "" +msgstr "Deinstallieren" -#: stock/templates/stock/item_base.html:186 -#: stock/templates/stock/location.html:55 +#: stock/templates/stock/item_base.html:186 stock/templates/stock/location.html:55 msgid "Stock actions" -msgstr "Lagerobjekt Aktionen" +msgstr "Bestands-Aktionen" #: stock/templates/stock/item_base.html:189 msgid "Convert to variant" @@ -4934,19 +4433,19 @@ msgstr "in Variante ändern" #: stock/templates/stock/item_base.html:192 msgid "Duplicate stock item" -msgstr "Lagerobjekt duplizieren" +msgstr "BestandsObjekt duplizieren" #: stock/templates/stock/item_base.html:194 msgid "Edit stock item" -msgstr "Lagerobjekt bearbeiten" +msgstr "BestandsObjekt bearbeiten" #: stock/templates/stock/item_base.html:197 msgid "Delete stock item" -msgstr "Lagerobjekt löschen" +msgstr "BestandsObjekt löschen" #: stock/templates/stock/item_base.html:209 msgid "Stock Item Details" -msgstr "Lagerbestands-Details" +msgstr "BestandsObjekt-Details" #: stock/templates/stock/item_base.html:268 templates/js/build.js:442 msgid "No location set" @@ -4954,10 +4453,10 @@ msgstr "Kein Lagerort gesetzt" #: stock/templates/stock/item_base.html:275 msgid "Barcode Identifier" -msgstr "Barcode Bezeichner" +msgstr "Barcode-Bezeichner" -#: stock/templates/stock/item_base.html:296 templates/InvenTree/search.html:167 -#: templates/js/build.js:655 templates/navbar.html:29 +#: stock/templates/stock/item_base.html:296 templates/InvenTree/search.html:167 templates/js/build.js:655 +#: templates/navbar.html:29 msgid "Build" msgstr "Bau" @@ -4967,11 +4466,11 @@ msgstr "Elternposition" #: stock/templates/stock/item_base.html:347 msgid "This StockItem expired on" -msgstr "Dieses Lagerobjekt lief ab am" +msgstr "Dieses BestandsObjekt lief ab am" #: stock/templates/stock/item_base.html:349 msgid "This StockItem expires on" -msgstr "Dieses Lagerobjekt läuft ab am" +msgstr "Dieses BestandsObjekt läuft ab am" #: stock/templates/stock/item_base.html:356 templates/js/stock.js:658 msgid "Last Updated" @@ -4987,55 +4486,46 @@ msgstr "Keine Inventur ausgeführt" #: stock/templates/stock/item_childs.html:12 msgid "Child Stock Items" -msgstr "Kind-Lagerobjekte" +msgstr "Kind-BestandsObjekt" #: stock/templates/stock/item_childs.html:20 msgid "This stock item does not have any child items" -msgstr "Dieses Lagerobjekt hat keine Kinder" +msgstr "Dieses BestandsObjekt hat keine Kinder" #: stock/templates/stock/item_delete.html:9 msgid "Are you sure you want to delete this stock item?" -msgstr "Sind Sie sicher, dass Sie dieses Lagerobjekt löschen wollen?" +msgstr "Sind Sie sicher, dass Sie dieses BestandsObjekt löschen wollen?" #: stock/templates/stock/item_install.html:7 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Install another StockItem into this item." -msgstr "In Lagerobjekt installiert" +msgstr "Ein weiteres BestandsObjekt in dieses Teil installiert" #: stock/templates/stock/item_install.html:10 msgid "Stock items can only be installed if they meet the following criteria" -msgstr "" +msgstr "BestandsObjekte können nur installiert werden wenn folgende Kriterien erfüllt werden" #: stock/templates/stock/item_install.html:13 msgid "The StockItem links to a Part which is in the BOM for this StockItem" -msgstr "" +msgstr "Das BestandsObjekt ist auf ein Teil verknüpft das in der Stückliste für dieses BestandsObjekt ist" #: stock/templates/stock/item_install.html:14 -#, fuzzy -#| msgid "This stock item is allocated to Build" msgid "The StockItem is currently in stock" -msgstr "Dieses Lagerobjekt ist dem Bau zugewiesen" +msgstr "Dieses BestandsObjekt ist aktuell vorhanden" -#: stock/templates/stock/item_installed.html:11 -#: stock/templates/stock/navbar.html:27 -#, fuzzy -#| msgid "Installed in Stock Item" +#: stock/templates/stock/item_installed.html:11 stock/templates/stock/navbar.html:27 msgid "Installed Stock Items" -msgstr "In Lagerobjekt installiert" +msgstr "Installierte BestandsObjekte" #: stock/templates/stock/item_serialize.html:5 -#, fuzzy -#| msgid "Purchase order for this stock item" msgid "Create serialized items from this stock item." -msgstr "Bestellung für dieses Teil" +msgstr "Teile mit Seriennummern von diesem BestandObjekt anlegen." #: stock/templates/stock/item_serialize.html:7 msgid "Select quantity to serialize, and unique serial numbers." -msgstr "" +msgstr "Zu serialisierende Anzahl und eindeutige Seriennummern angeben." -#: stock/templates/stock/item_tests.html:11 -#: stock/templates/stock/navbar.html:19 stock/templates/stock/navbar.html:22 +#: stock/templates/stock/item_tests.html:11 stock/templates/stock/navbar.html:19 +#: stock/templates/stock/navbar.html:22 msgid "Test Data" msgstr "Testdaten" @@ -5048,26 +4538,20 @@ msgid "Add Test Data" msgstr "Testdaten hinzufügen" #: stock/templates/stock/location.html:13 -msgid "" -"You are not in the list of owners of this location. This stock location " -"cannot be edited." -msgstr "" +msgid "You are not in the list of owners of this location. This stock location cannot be edited." +msgstr "Sie sind nciht auf der Liste der Besizer dieses Lagerorts. Der Bestands-Lagerort kann nicht verändert werden." #: stock/templates/stock/location.html:30 msgid "All stock items" -msgstr "Alle Lagerobjekte" +msgstr "Alle BestandsObjekte" #: stock/templates/stock/location.html:48 -#, fuzzy -#| msgid "Child Stock Items" msgid "Check-in Items" -msgstr "Kind-Lagerobjekte" +msgstr "Teile einchecken" #: stock/templates/stock/location.html:64 -#, fuzzy -#| msgid "Location Description" msgid "Location actions" -msgstr "Standort-Beschreibung" +msgstr "Lagerort-Aktionen" #: stock/templates/stock/location.html:66 msgid "Edit location" @@ -5079,28 +4563,28 @@ msgstr "Lagerort löschen" #: stock/templates/stock/location.html:80 msgid "Location Details" -msgstr "Standort-Details" +msgstr "Lagerort-Details" #: stock/templates/stock/location.html:85 msgid "Location Path" -msgstr "Standord-Pfad" +msgstr "Lagerort-Pfad" #: stock/templates/stock/location.html:90 msgid "Location Description" -msgstr "Standort-Beschreibung" +msgstr "Lagerort-Beschreibung" #: stock/templates/stock/location.html:95 msgid "Sublocations" -msgstr "Sub-Lagerorte" +msgstr "Unter-Lagerorte" #: stock/templates/stock/location.html:105 msgid "Stock Details" msgstr "Objekt-Details" -#: stock/templates/stock/location.html:110 templates/InvenTree/search.html:263 -#: templates/stats.html:52 users/models.py:34 +#: stock/templates/stock/location.html:110 templates/InvenTree/search.html:263 templates/stats.html:52 +#: users/models.py:34 msgid "Stock Locations" -msgstr "Lagerorte" +msgstr "Bestand-Lagerorte" #: stock/templates/stock/location_delete.html:7 msgid "Are you sure you want to delete this stock location?" @@ -5108,7 +4592,7 @@ msgstr "Sind Sie sicher, dass Sie diesen Lagerort löschen wollen?" #: stock/templates/stock/location_list.html:6 msgid "Sub-Locations" -msgstr "Unter-Lagerorte" +msgstr "Sub-Lagerorte" #. Translators: pluralize with counter #: stock/templates/stock/location_list.html:17 @@ -5120,7 +4604,7 @@ msgstr[1] "%(counter)s Objekte" #: stock/templates/stock/navbar.html:11 msgid "Stock Item Tracking" -msgstr "Lagerobjektverfolgung" +msgstr "BestandsObjekt-Verfolgung" #: stock/templates/stock/navbar.html:14 msgid "History" @@ -5144,15 +4628,15 @@ msgstr "Lade..." #: stock/templates/stock/stock_uninstall.html:8 msgid "The following stock items will be uninstalled" -msgstr "Die folgenden Lagerobjekte werden nicht mehr verbaut" +msgstr "Die folgenden BestandsObjekte werden nicht mehr verbaut" #: stock/templates/stock/stockitem_convert.html:7 stock/views.py:1331 msgid "Convert Stock Item" -msgstr "Lagerobjekt umwandeln" +msgstr "BestandsObjekt umwandeln" #: stock/templates/stock/stockitem_convert.html:8 msgid "This stock item is current an instance of " -msgstr "Lagerobjekt ist aktuell eine Instanz von" +msgstr "BestandsObjekt ist aktuell eine Instanz von" #: stock/templates/stock/stockitem_convert.html:9 msgid "It can be converted to one of the part variants listed below." @@ -5164,28 +4648,27 @@ msgstr "Diese Aktion kann nicht einfach rückgängig gemacht werden" #: stock/views.py:123 msgid "Edit Stock Location" -msgstr "Lagerobjekt-Standort bearbeiten" +msgstr "BestandsObjekt-Lagerort bearbeiten" -#: stock/views.py:230 stock/views.py:1321 stock/views.py:1432 -#: stock/views.py:1797 +#: stock/views.py:230 stock/views.py:1321 stock/views.py:1432 stock/views.py:1797 msgid "Owner is required (ownership control is enabled)" -msgstr "Eigentümer notwendig (Eigentümerkontolle aktiv)" +msgstr "Eigentümer notwendig (Eigentümerkontrolle aktiv)" #: stock/views.py:245 msgid "Stock Location QR code" -msgstr "QR-Code für diesen Standort" +msgstr "QR-Code für diesen Lagerort" #: stock/views.py:265 msgid "Add Stock Item Attachment" -msgstr "Lagerobjekt Anhang hinzufügen" +msgstr "BestandsObjekt-Anhang hinzufügen" #: stock/views.py:311 msgid "Edit Stock Item Attachment" -msgstr "Lagerobjekt Anhang bearbeiten" +msgstr "BestandsObjekt-Anhang bearbeiten" #: stock/views.py:327 msgid "Delete Stock Item Attachment" -msgstr "Lagerobjekt Anhang löschen" +msgstr "BestandsObjekt-Anhang löschen" #: stock/views.py:343 msgid "Assign to Customer" @@ -5205,7 +4688,7 @@ msgstr "gültigen Lagerort angeben" #: stock/views.py:396 msgid "Stock item returned from customer" -msgstr "Lagerbestand Retoure vom Kunden" +msgstr "BestandsObjekt retoure vom Kunden" #: stock/views.py:407 msgid "Delete All Test Data" @@ -5233,25 +4716,19 @@ msgstr "Lagerbestand Exportoptionen" #: stock/views.py:630 msgid "Stock Item QR Code" -msgstr "Lagerobjekt-QR-Code" +msgstr "BestandsObjekt-QR-Code" #: stock/views.py:656 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Install Stock Item" -msgstr "In Lagerobjekt installiert" +msgstr "BestandsObjekt installiert" #: stock/views.py:755 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Uninstall Stock Items" -msgstr "In Lagerobjekt installiert" +msgstr "BestandsObjekte deinstallieren" #: stock/views.py:863 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Uninstalled stock items" -msgstr "In Lagerobjekt installiert" +msgstr "BestandsObjekte deinstalliert" #: stock/views.py:888 msgid "Adjust Stock" @@ -5259,11 +4736,11 @@ msgstr "Lagerbestand anpassen" #: stock/views.py:998 msgid "Move Stock Items" -msgstr "Lagerobjekte bewegen" +msgstr "BestandsObjekte bewegen" #: stock/views.py:999 msgid "Count Stock Items" -msgstr "Lagerobjekte zählen" +msgstr "BestandsObjekte zählen" #: stock/views.py:1000 msgid "Remove From Stock" @@ -5271,11 +4748,11 @@ msgstr "Aus Lagerbestand entfernen" #: stock/views.py:1001 msgid "Add Stock Items" -msgstr "Lagerobjekte hinzufügen" +msgstr "BestandsObjekte hinzufügen" #: stock/views.py:1002 msgid "Delete Stock Items" -msgstr "Lagerobjekte löschen" +msgstr "BestandsObjekte löschen" #: stock/views.py:1030 msgid "Must enter integer value" @@ -5301,7 +4778,7 @@ msgstr "Bestand für {n} Objekte erfasst" #: stock/views.py:1189 msgid "No items were moved" -msgstr "Keine Lagerobjekte wurden bewegt" +msgstr "Keine BestandsObjekt wurden bewegt" #: stock/views.py:1192 #, python-brace-format @@ -5311,11 +4788,11 @@ msgstr "{n} Teile nach {dest} bewegt" #: stock/views.py:1211 #, python-brace-format msgid "Deleted {n} stock items" -msgstr "{n} Teile im Lager gelöscht" +msgstr "{n} BestandsObjekte gelöscht" #: stock/views.py:1223 msgid "Edit Stock Item" -msgstr "Lagerobjekt bearbeiten" +msgstr "BestandsObjekt bearbeiten" #: stock/views.py:1449 msgid "Serialize Stock" @@ -5323,7 +4800,7 @@ msgstr "Lagerbestand erfassen" #: stock/views.py:1542 templates/js/build.js:210 msgid "Create new Stock Item" -msgstr "Neues Lagerobjekt hinzufügen" +msgstr "Neues BestandsObjekt hinzufügen" #: stock/views.py:1684 msgid "Duplicate Stock Item" @@ -5335,11 +4812,11 @@ msgstr "Anzahl kann nicht negativ sein" #: stock/views.py:1866 msgid "Delete Stock Location" -msgstr "Standort löschen" +msgstr "Bestand-Lagerort löschen" #: stock/views.py:1879 msgid "Delete Stock Item" -msgstr "Lagerobjekt löschen" +msgstr "BestandsObjekt löschen" #: stock/views.py:1890 msgid "Delete Stock Tracking Entry" @@ -5383,7 +4860,7 @@ msgstr "neueste Teile" #: templates/InvenTree/index.html:99 msgid "BOM Waiting Validation" -msgstr "" +msgstr "Stückliste erwartet Validierung" #: templates/InvenTree/index.html:128 msgid "Recently Updated" @@ -5391,7 +4868,7 @@ msgstr "kürzlich aktualisiert" #: templates/InvenTree/index.html:143 msgid "Expired Stock" -msgstr "abgeliefender Bestand" +msgstr "abgelaufener Bestand" #: templates/InvenTree/index.html:144 msgid "Stale Stock" @@ -5407,19 +4884,19 @@ msgstr "verspätete Bauaufträge" #: templates/InvenTree/index.html:204 msgid "Outstanding Purchase Orders" -msgstr "ausstehende EK-Bestellungen" +msgstr "ausstehende Bestellungen" #: templates/InvenTree/index.html:205 msgid "Overdue Purchase Orders" -msgstr "überfällige EK-Bestellungen" +msgstr "überfällige Bestellungen" #: templates/InvenTree/index.html:227 msgid "Outstanding Sales Orders" -msgstr "ausstehende VK-Aufträge" +msgstr "ausstehende Aufträge" #: templates/InvenTree/index.html:228 msgid "Overdue Sales Orders" -msgstr "überfällige VK-Aufträge" +msgstr "überfällige Aufträge" #: templates/InvenTree/search.html:7 templates/InvenTree/search.html:13 msgid "Search Results" @@ -5446,28 +4923,22 @@ msgid "Category Settings" msgstr "Kategorie-Einstellungen" #: templates/InvenTree/settings/category.html:25 -#, fuzzy -#| msgid "Edit Part Parameter Template" msgid "Category Parameter Templates" -msgstr "Teilparametervorlage bearbeiten" +msgstr "Kategorie-Parametervorlagen" #: templates/InvenTree/settings/category.html:52 -#, fuzzy -#| msgid "No part parameter templates found" msgid "No category parameter templates found" -msgstr "Keine Teilparametervorlagen gefunden" +msgstr "Keine Kategorie-Parametervorlagen gefunden" #: templates/InvenTree/settings/category.html:67 msgid "Default Value" msgstr "Standard-Wert" -#: templates/InvenTree/settings/category.html:70 -#: templates/InvenTree/settings/part.html:80 +#: templates/InvenTree/settings/category.html:70 templates/InvenTree/settings/part.html:80 msgid "Edit Template" msgstr "Vorlage bearbeiten" -#: templates/InvenTree/settings/category.html:71 -#: templates/InvenTree/settings/part.html:81 +#: templates/InvenTree/settings/category.html:71 templates/InvenTree/settings/part.html:81 msgid "Delete Template" msgstr "Vorlage löschen" @@ -5492,10 +4963,8 @@ msgid "Part Options" msgstr "Teil-Optionen" #: templates/InvenTree/settings/part.html:39 -#, fuzzy -#| msgid "Edit Part Parameter Template" msgid "Part Parameter Templates" -msgstr "Teilparametervorlage bearbeiten" +msgstr "Teil-Üarametervorlage" #: templates/InvenTree/settings/part.html:60 msgid "No part parameter templates found" @@ -5517,8 +4986,8 @@ msgstr "Kein Wert angegeben" msgid "Edit setting" msgstr "Einstellungen ändern" -#: templates/InvenTree/settings/settings.html:7 -#: templates/InvenTree/settings/settings.html:13 templates/navbar.html:76 +#: templates/InvenTree/settings/settings.html:7 templates/InvenTree/settings/settings.html:13 +#: templates/navbar.html:76 msgid "Settings" msgstr "Einstellungen" @@ -5534,8 +5003,7 @@ msgstr "Bestands-Einstellungen" msgid "Stock Options" msgstr "Stock-Optionen" -#: templates/InvenTree/settings/tabs.html:3 -#: templates/InvenTree/settings/user.html:10 +#: templates/InvenTree/settings/tabs.html:3 templates/InvenTree/settings/user.html:10 msgid "User Settings" msgstr "Benutzer-Einstellungen" @@ -5560,10 +5028,8 @@ msgid "Report" msgstr "Bericht" #: templates/InvenTree/settings/tabs.html:22 -#, fuzzy -#| msgid "Part Categories" msgid "Categories" -msgstr "Teile-Kategorien" +msgstr "Kategorien" #: templates/InvenTree/settings/theme.html:10 msgid "Theme Settings" @@ -5577,8 +5043,8 @@ msgstr "Farbschemata" #, python-format msgid "" "\n" -"\t\tThe CSS sheet \"%(invalid_color_theme)s.css\" for the currently selected " -"color theme was not found.
\n" +"\t\tThe CSS sheet \"%(invalid_color_theme)s.css\" for the currently selected color theme was not found." +"
\n" "\t\tPlease select another color theme :)\n" "\t" msgstr "" @@ -5591,8 +5057,7 @@ msgstr "Benutzerinformation" msgid "Change Password" msgstr "Passwort ändern" -#: templates/InvenTree/settings/user.html:28 -#: templates/registration/login.html:58 +#: templates/InvenTree/settings/user.html:28 templates/registration/login.html:58 msgid "Username" msgstr "Benutzername" @@ -5665,10 +5130,8 @@ msgid "Delete attachment" msgstr "Anhang löschen" #: templates/js/barcode.js:8 -#, fuzzy -#| msgid "No barcode data provided" msgid "Scan barcode data here using wedge scanner" -msgstr "Keine Strichcodedaten bereitgestellt" +msgstr "Hier den Barcode scannen" #: templates/js/barcode.js:10 msgid "Enter barcode data" @@ -5699,10 +5162,8 @@ msgid "Invalid server response" msgstr "" #: templates/js/barcode.js:212 -#, fuzzy -#| msgid "No barcode data provided" msgid "Scan barcode data below" -msgstr "Keine Strichcodedaten bereitgestellt" +msgstr "Barcode unterhalb scannen" #: templates/js/barcode.js:270 msgid "No URL in response" @@ -5710,72 +5171,55 @@ msgstr "keine URL in der Antwort" #: templates/js/barcode.js:288 msgid "Link Barcode to Stock Item" -msgstr "Barcode mit Lagerobjekt verknüpfen" +msgstr "Barcode mit BestandsObjekt verknüpfen" #: templates/js/barcode.js:311 -msgid "" -"This will remove the association between this stock item and the barcode" -msgstr "" +msgid "This will remove the association between this stock item and the barcode" +msgstr "Dadurch wird die Verknüpfung zwischen diesem BestandsObjekt und dem Barcode entfernt" #: templates/js/barcode.js:317 msgid "Unlink" -msgstr "" +msgstr "Entfernen" #: templates/js/barcode.js:376 msgid "Remove stock item" -msgstr "Bestand entfernen" +msgstr "BestandsObjekt entfernen" #: templates/js/barcode.js:418 -#, fuzzy -#| msgid "Include stock items in sub locations" msgid "Check Stock Items into Location" -msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" +msgstr "BestandsObjekte in Lagerort buchen" #: templates/js/barcode.js:422 templates/js/barcode.js:547 msgid "Check In" msgstr "" #: templates/js/barcode.js:462 templates/js/barcode.js:586 -#, fuzzy -#| msgid "Order stock" msgid "Error transferring stock" -msgstr "Bestand bestellen" +msgstr "Fehler bei Bestandsübertragung" #: templates/js/barcode.js:481 -#, fuzzy -#| msgid "Stock Item Details" msgid "Stock Item already scanned" -msgstr "Lagerbestands-Details" +msgstr "BestandsObjekte bereits gescannt" #: templates/js/barcode.js:485 -#, fuzzy -#| msgid "Include stock items in sub locations" msgid "Stock Item already in this location" -msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" +msgstr "BestandsObjekt besteht bereits in diesem Lagerort" #: templates/js/barcode.js:492 -#, fuzzy -#| msgid "Added stock to {n} items" msgid "Added stock item" -msgstr "Vorrat zu {n} Lagerobjekten hinzugefügt" +msgstr "BestandsObjekt hinzugefügt" #: templates/js/barcode.js:499 -#, fuzzy -#| msgid "Create new Stock Item" msgid "Barcode does not match Stock Item" -msgstr "Neues Lagerobjekt hinzufügen" +msgstr "Barcode entspricht keinem BestandsObjekt" #: templates/js/barcode.js:542 -#, fuzzy -#| msgid "Include stock items in sub locations" msgid "Check Into Location" -msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" +msgstr "In Lagerorten buchen" #: templates/js/barcode.js:605 -#, fuzzy -#| msgid "Create new Stock Item" msgid "Barcode does not match a valid location" -msgstr "Neues Lagerobjekt hinzufügen" +msgstr "Barcode entspricht keinem Lagerort" #: templates/js/bom.js:175 templates/js/build.js:934 msgid "Open subassembly" @@ -5791,7 +5235,7 @@ msgstr "Keine Preisinformation verfügbar" #: templates/js/bom.js:286 templates/js/bom.js:372 msgid "View BOM" -msgstr "BOM anzeigen" +msgstr "Stückliste anzeigen" #: templates/js/bom.js:338 templates/js/build.js:571 templates/js/build.js:984 msgid "Actions" @@ -5799,7 +5243,7 @@ msgstr "Aktionen" #: templates/js/bom.js:346 msgid "Validate BOM Item" -msgstr "BOM-Position validieren" +msgstr "Stücklisten-Position validieren" #: templates/js/bom.js:348 msgid "This line has been validated" @@ -5807,64 +5251,49 @@ msgstr "Diese Position wurde validiert" #: templates/js/bom.js:350 msgid "Edit BOM Item" -msgstr "BOM-Position bearbeiten" +msgstr "Stücklisten-Position bearbeiten" #: templates/js/bom.js:352 msgid "Delete BOM Item" -msgstr "BOM-Position löschen" +msgstr "Stücklisten-Position löschen" #: templates/js/bom.js:443 templates/js/build.js:305 templates/js/build.js:1032 msgid "No BOM items found" -msgstr "Keine BOM-Einträge gefunden" +msgstr "Keine Stücklisten-Position(en) gefunden" #: templates/js/build.js:56 -#, fuzzy -#| msgid "Installed in Stock Item" msgid "Auto-allocate stock items to this output" -msgstr "In Lagerobjekt installiert" +msgstr "BestandsObjekte automatisch Bau-Ausgabe zuordnen" #: templates/js/build.js:62 -#, fuzzy -#| msgid "Complete Build" msgid "Complete build output" -msgstr "Bau fertigstellen" +msgstr "Endprodukt fertigstellen" #: templates/js/build.js:71 -#, fuzzy -#| msgid "Allocate Stock to Build" msgid "Unallocate stock from build output" -msgstr "Lagerbestand dem Bau zuweisen" +msgstr "Bestand von Endpordukt zurücknehmen" #: templates/js/build.js:77 -#, fuzzy -#| msgid "Delete Build" msgid "Delete build output" -msgstr "Bau entfernt" +msgstr "Endprodukt entfernt" #: templates/js/build.js:209 templates/stock_table.html:20 msgid "New Stock Item" -msgstr "Neues Lagerobjekt" +msgstr "Neues BestandsObjekt" #: templates/js/build.js:493 -#, fuzzy -#| msgid "Required" msgid "Required Part" -msgstr "benötigt" +msgstr "benötigter Teil" #: templates/js/build.js:514 -#, fuzzy -#| msgid "Quantity" msgid "Quantity Per" -msgstr "Anzahl" +msgstr "Anzahl pro" #: templates/js/build.js:578 templates/js/build.js:992 -#, fuzzy -#| msgid "Builds" msgid "Build stock" -msgstr "Baue" +msgstr "Baue Bestand" -#: templates/js/build.js:582 templates/js/build.js:996 -#: templates/stock_table.html:57 +#: templates/js/build.js:582 templates/js/build.js:996 templates/stock_table.html:57 msgid "Order stock" msgstr "Bestand bestellen" @@ -5876,32 +5305,25 @@ msgstr "Lagerbestand zuweisen" msgid "No builds matching query" msgstr "Keine Baue passen zur Anfrage" -#: templates/js/build.js:649 templates/js/part.js:323 templates/js/stock.js:512 -#: templates/js/stock.js:1250 +#: templates/js/build.js:649 templates/js/part.js:323 templates/js/stock.js:512 templates/js/stock.js:1250 msgid "Select" msgstr "Auswählen" #: templates/js/build.js:669 -#, fuzzy -#| msgid "Build order allocation is complete" msgid "Build order is overdue" -msgstr "Bau-Zuweisung ist vollständig" +msgstr "Bauauftrag ist überfällig" #: templates/js/build.js:767 msgid "No parts allocated for" msgstr "Keine Teile zugeordnet zu" #: templates/js/company.js:74 -#, fuzzy -#| msgid "Suppliers" msgid "Parts Supplied" -msgstr "Zulieferer" +msgstr "Teile geliefert" #: templates/js/company.js:83 -#, fuzzy -#| msgid "Manufacturer" msgid "Parts Manufactured" -msgstr "Hersteller" +msgstr "Teile gefertigt" #: templates/js/company.js:96 msgid "No company information found" @@ -5909,7 +5331,7 @@ msgstr "Keine Firmeninformation gefunden" #: templates/js/company.js:129 msgid "No supplier parts found" -msgstr "Keine Zuliefererteile gefunden" +msgstr "Keine Zulieferer-Teile gefunden" #: templates/js/company.js:147 templates/js/part.js:59 templates/js/part.js:144 msgid "Template part" @@ -5920,28 +5342,20 @@ msgid "Assembled part" msgstr "Baugruppe" #: templates/js/label.js:10 templates/js/report.js:98 -#, fuzzy -#| msgid "Delete Stock Items" msgid "Select Stock Items" -msgstr "Lagerobjekte löschen" +msgstr "BestandsObjekte auswählen" #: templates/js/label.js:11 -#, fuzzy -#| msgid "StockItem has been allocated" msgid "Stock item(s) must be selected before printing labels" -msgstr "Lagerobjekt wurde zugewiesen" +msgstr "BestandsObjekt(e) müssen ausgewählt sein bevor Labels gedruckt werden können" #: templates/js/label.js:29 templates/js/label.js:79 -#, fuzzy -#| msgid "No parts found" msgid "No Labels Found" -msgstr "Keine Teile gefunden" +msgstr "Keine Labels gefunden" #: templates/js/label.js:30 -#, fuzzy -#| msgid "Remove selected BOM items" msgid "No labels found which match selected stock item(s)" -msgstr "Ausgewählte Stücklistenpositionen entfernen" +msgstr "Keine Labels die zu BestandsObjekt(e) passen gefunden" #: templates/js/label.js:61 msgid "Select Stock Locations" @@ -5949,35 +5363,27 @@ msgstr "Bestands-Lagerort auswählen" #: templates/js/label.js:62 msgid "Stock location(s) must be selected before printing labels" -msgstr "" +msgstr "Bestands-Lagerort(e) müssen ausgewählt sein um Labels zu drucken" #: templates/js/label.js:80 msgid "No labels found which match selected stock location(s)" -msgstr "" +msgstr "Keine Labels für die ausgewählten Bestands-Lagerort(e) gefunden" #: templates/js/label.js:154 -#, fuzzy -#| msgid "StockItem has been allocated" msgid "stock items selected" -msgstr "Lagerobjekt wurde zugewiesen" +msgstr "BestandsObjekte ausgewählt" #: templates/js/label.js:162 -#, fuzzy -#| msgid "Select valid part" msgid "Select Label" -msgstr "Bitte ein gültiges Teil auswählen" +msgstr "Label auswählen" #: templates/js/label.js:177 -#, fuzzy -#| msgid "Select valid part" msgid "Select Label Template" -msgstr "Bitte ein gültiges Teil auswählen" +msgstr "Label-Vorlage auswählen" #: templates/js/modals.js:406 -#, fuzzy -#| msgid "Show pricing information" msgid "Show Error Information" -msgstr "Kosteninformationen ansehen" +msgstr "Fehler-Informationen anzeigen" #: templates/js/modals.js:473 templates/modals.html:66 msgid "Accept" @@ -5991,13 +5397,12 @@ msgstr "abbrechen" msgid "Loading Data" msgstr "Lade Daten" -#: templates/js/modals.js:549 templates/js/modals.js:807 -#: templates/modals.html:22 templates/modals.html:46 +#: templates/js/modals.js:549 templates/js/modals.js:807 templates/modals.html:22 templates/modals.html:46 msgid "Submit" msgstr "abschicken" -#: templates/js/modals.js:550 templates/js/modals.js:808 -#: templates/modals.html:21 templates/modals.html:45 templates/modals.html:84 +#: templates/js/modals.js:550 templates/js/modals.js:808 templates/modals.html:21 templates/modals.html:45 +#: templates/modals.html:84 msgid "Close" msgstr "Schliessen" @@ -6071,7 +5476,7 @@ msgstr "" #: templates/js/order.js:138 msgid "No purchase orders found" -msgstr "Keine EK-Bestellungen gefunden" +msgstr "Keine Bestellungen gefunden" #: templates/js/order.js:162 templates/js/order.js:257 msgid "Order is overdue" @@ -6079,7 +5484,7 @@ msgstr "Bestellung überfällig" #: templates/js/order.js:234 msgid "No sales orders found" -msgstr "Keine VK-Aufträge gefunden" +msgstr "Keine Aufträge gefunden" #: templates/js/order.js:303 msgid "Shipment Date" @@ -6143,7 +5548,7 @@ msgstr "Dieses Testergebnis ist für ein Hauptteil" #: templates/js/report.js:47 msgid "items selected" -msgstr "Lagerobjekte ausgewählt" +msgstr "BestandsObjekt ausgewählt" #: templates/js/report.js:55 msgid "Select Report Template" @@ -6155,16 +5560,15 @@ msgstr "Test Report Vorlage auswählen" #: templates/js/report.js:99 msgid "Stock item(s) must be selected before printing reports" -msgstr "Lagerobjekt(e) müssen vor dem Reportdruck ausgewählt werden" +msgstr "BestandsObjekt(e) müssen vor dem Reportdruck ausgewählt werden" -#: templates/js/report.js:116 templates/js/report.js:169 -#: templates/js/report.js:223 +#: templates/js/report.js:116 templates/js/report.js:169 templates/js/report.js:223 msgid "No Reports Found" msgstr "Keine Reports gefunden" #: templates/js/report.js:117 msgid "No report templates found which match selected stock item(s)" -msgstr "Keine Reportvorlagen für ausgewählte Lagerobjekte gefunden" +msgstr "Keine Berichtsvorlagen für ausgewählte BestandsObjekt(e) gefunden" #: templates/js/report.js:152 msgid "Select Builds" @@ -6176,7 +5580,7 @@ msgstr "Bau muss vor dem Reportdruck ausgewählt werden" #: templates/js/report.js:170 msgid "No report templates found which match selected build(s)" -msgstr "Keine Reportvorlagen für ausgewählten Bau gefunden" +msgstr "Keine Berichtvorlagen für ausgewählten Bau gefunden" #: templates/js/report.js:205 msgid "Select Parts" @@ -6188,7 +5592,7 @@ msgstr "Teil muss vor dem Reportdruck ausgewählt werden" #: templates/js/report.js:224 msgid "No report templates found which match selected part(s)" -msgstr "Keine Reportvorlagen für ausgewählte Teile gefunden" +msgstr "Keine Berichtvorlagen für ausgewählte Teile gefunden" #: templates/js/stock.js:38 msgid "PASS" @@ -6220,15 +5624,15 @@ msgstr "In Arbeit" #: templates/js/stock.js:297 msgid "Installed in Stock Item" -msgstr "In Lagerobjekt installiert" +msgstr "In BestandsObjekt installiert" #: templates/js/stock.js:305 msgid "Assigned to Sales Order" -msgstr "VK-Auftrag zugewiesen" +msgstr "Auftrag zugewiesen" #: templates/js/stock.js:337 msgid "No stock items matching query" -msgstr "Keine zur Anfrage passenden Lagerobjekte" +msgstr "Keine zur Anfrage passenden BestandsObjekte" #: templates/js/stock.js:479 msgid "Undefined location" @@ -6236,43 +5640,43 @@ msgstr "unbekannter Lagerort" #: templates/js/stock.js:575 msgid "Stock item is in production" -msgstr "Lagerobjekt wird produziert" +msgstr "BestandsObjekt wird produziert" #: templates/js/stock.js:580 msgid "Stock item assigned to sales order" -msgstr "Lagerobjekt wurde Auftrag zugewiesen" +msgstr "BestandsObjekt wurde Auftrag zugewiesen" #: templates/js/stock.js:583 msgid "Stock item assigned to customer" -msgstr "Lagerobjekt wurde Kunden zugewiesen" +msgstr "BestandsObjekt wurde Kunden zugewiesen" #: templates/js/stock.js:587 msgid "Stock item has expired" -msgstr "Lagerobjekt ist abgelaufen" +msgstr "BestandsObjekt ist abgelaufen" #: templates/js/stock.js:589 msgid "Stock item will expire soon" -msgstr "Lagerobjekt läuft demnächst ab" +msgstr "BestandsObjekt läuft demnächst ab" #: templates/js/stock.js:593 msgid "Stock item has been allocated" -msgstr "Lagerobjekt ist zugewiesen" +msgstr "BestandsObjekt zugewiesen" #: templates/js/stock.js:597 msgid "Stock item has been installed in another item" -msgstr "Lagerobjekt wurde in anderem Element verbaut" +msgstr "BestandsObjekt in anderem Element verbaut" #: templates/js/stock.js:605 msgid "Stock item has been rejected" -msgstr "Lagerobjekt wurde abgewiesen" +msgstr "BestandsObjekt abgewiesen" #: templates/js/stock.js:609 msgid "Stock item is lost" -msgstr "Lagerobjekt verloren" +msgstr "BestandsObjekt verloren" #: templates/js/stock.js:612 msgid "Stock item is destroyed" -msgstr "Lagerobjekt ist zerstört" +msgstr "BestandsObjekt zerstört" #: templates/js/stock.js:616 templates/js/table_filters.js:111 msgid "Depleted" @@ -6280,7 +5684,7 @@ msgstr "gelöscht" #: templates/js/stock.js:645 msgid "Stocktake" -msgstr "Bestandsaufnahme" +msgstr "Inventur" #: templates/js/stock.js:821 msgid "Stock Status" @@ -6304,7 +5708,7 @@ msgstr "Keine Benutzerinformation" #: templates/js/stock.js:1089 msgid "Create New Location" -msgstr "Neuen Standort anlegen" +msgstr "Neuen Lagerort anlegen" #: templates/js/stock.js:1188 msgid "Serial" @@ -6346,8 +5750,8 @@ msgstr "Seriennummer <=" msgid "Serial number less than or equal to" msgstr "Seriennummern kleiner oder gleich" -#: templates/js/table_filters.js:81 templates/js/table_filters.js:82 -#: templates/js/table_filters.js:157 templates/js/table_filters.js:158 +#: templates/js/table_filters.js:81 templates/js/table_filters.js:82 templates/js/table_filters.js:157 +#: templates/js/table_filters.js:158 msgid "Serial number" msgstr "Seriennummer" @@ -6373,25 +5777,23 @@ msgstr "Position wurde zugeordnet" #: templates/js/table_filters.js:106 msgid "Include sublocations" -msgstr "Unterlagerorte einschließen" +msgstr "Unter-Lagerorte einschließen" #: templates/js/table_filters.js:107 msgid "Include stock in sublocations" -msgstr "Bestand in Unterlagerorten einschließen" +msgstr "Bestand in Unter-Lagerorten einschließen" #: templates/js/table_filters.js:112 msgid "Show stock items which are depleted" -msgstr "zeige aufgebrauchte Lagerobjekte " +msgstr "Zeige aufgebrauchte BestandsObjekte" #: templates/js/table_filters.js:119 msgid "Show stock items which have expired" -msgstr "Zeige überfällige Lagerobjekte" +msgstr "Zeige abgelaufene BestandsObjekte" #: templates/js/table_filters.js:124 -#, fuzzy -#| msgid "Delete this Stock Item when stock is depleted" msgid "Show stock which is close to expiring" -msgstr "Objekt löschen wenn Lagerbestand aufgebraucht" +msgstr "Bestand, der bald ablaufen, anzeigen" #: templates/js/table_filters.js:130 msgid "Show items which are in stock" @@ -6402,30 +5804,24 @@ msgid "In Production" msgstr "In Arbeit" #: templates/js/table_filters.js:135 -#, fuzzy -#| msgid "Delete this Stock Item when stock is depleted" msgid "Show items which are in production" -msgstr "Objekt löschen wenn Lagerbestand aufgebraucht" +msgstr "Elemente, die in Produktion sind, anzeigen" #: templates/js/table_filters.js:139 msgid "Include Variants" msgstr "Varianten hinzufügen" #: templates/js/table_filters.js:140 -#, fuzzy -#| msgid "Include stock items in sub locations" msgid "Include stock items for variant parts" -msgstr "Lagerobjekte in untergeordneten Lagerorten einschließen" +msgstr "BestandsObjekte für Teil-Varianten einschließen" #: templates/js/table_filters.js:145 -#, fuzzy -#| msgid "Is this item installed in another item?" msgid "Show stock items which are installed in another item" -msgstr "Ist dieses Teil in einem anderen verbaut?" +msgstr "BestandsObjekte, die in anderen Elementen verbaut sind, anzeigen" #: templates/js/table_filters.js:149 msgid "Sent to customer" -msgstr "bereits zum Kunden geschickt" +msgstr "Zum Kunden geschickt" #: templates/js/table_filters.js:150 msgid "Show items which have been assigned to a customer" @@ -6503,8 +5899,7 @@ msgstr "von" msgid "rows" msgstr "Zeilen" -#: templates/js/tables.js:330 templates/search_form.html:6 -#: templates/search_form.html:8 +#: templates/js/tables.js:330 templates/search_form.html:6 templates/search_form.html:8 msgid "Search" msgstr "Suche" @@ -6642,23 +6037,23 @@ msgstr "Test Reports drucken" #: templates/stock_table.html:53 msgid "Add to selected stock items" -msgstr "zu ausgewähltenLagerobjekten hinzufügen" +msgstr "Zu ausgewählten BestandsObjekten hinzufügen" #: templates/stock_table.html:54 msgid "Remove from selected stock items" -msgstr "von ausgewählten Lagerobjekten entfernen" +msgstr "Von ausgewählten BestandsObjekten entfernen" #: templates/stock_table.html:55 msgid "Stocktake selected stock items" -msgstr "Bestandsänderung gewählte Lagerobjekte" +msgstr "Inventur für gewählte BestandsObjekte" #: templates/stock_table.html:56 msgid "Move selected stock items" -msgstr "ausgewählte Lagerobjekte bewegen" +msgstr "Ausgewählte BestandsObjekte verschieben" #: templates/stock_table.html:56 msgid "Move stock" -msgstr "Bestand bewegen" +msgstr "Bestand verschieben" #: templates/stock_table.html:57 msgid "Order selected items" @@ -6756,7 +6151,7 @@ msgstr "Berechtigung Einträge zu löschen" #, fuzzy #~| msgid "Move Stock Items" #~ msgid "Must provide valid StockItem(s)" -#~ msgstr "Lagerobjekte bewegen" +#~ msgstr "BestandsObjekt bewegen" #, fuzzy #~| msgid "Add Line Item" @@ -6840,10 +6235,10 @@ msgstr "Berechtigung Einträge zu löschen" #~ msgstr "BOM validieren" #~ msgid "Added stock to {n} items" -#~ msgstr "Vorrat zu {n} Lagerobjekten hinzugefügt" +#~ msgstr "Vorrat zu {n} BestandsObjekten hinzugefügt" #~ msgid "Removed stock from {n} items" -#~ msgstr "Vorrat von {n} Lagerobjekten entfernt" +#~ msgstr "Vorrat von {n} BestandsObjekten entfernt" #, fuzzy #~| msgid "Confirm stock adjustment" @@ -6874,10 +6269,10 @@ msgstr "Berechtigung Einträge zu löschen" #~ msgstr "Ungültige Teileauswahl" #~ msgid "Created {n} new stock items" -#~ msgstr "{n} neue Lagerobjekte erstellt" +#~ msgstr "{n} neue BestandsObjekt erstellt" #~ msgid "Created new stock item" -#~ msgstr "Neues Lagerobjekt erstellt" +#~ msgstr "Neues BestandsObjekt erstellt" #~ msgid "Statistics" #~ msgstr "Statistiken" @@ -6943,10 +6338,8 @@ msgstr "Berechtigung Einträge zu löschen" #, fuzzy #~| msgid "No stock items found that can be allocated to this build" -#~ msgid "" -#~ "Where the following conditions are met, stock will be automatically " -#~ "allocated to this build" -#~ msgstr "Keine Lagerobjekt gefunden, die diesem Bau zugewiesen werden können" +#~ msgid "Where the following conditions are met, stock will be automatically allocated to this build" +#~ msgstr "Keine BestandsObjekt gefunden, die diesem Bau zugewiesen werden können" #, fuzzy #~| msgid "Part is not a virtual part" @@ -6956,22 +6349,21 @@ msgstr "Berechtigung Einträge zu löschen" #, fuzzy #~| msgid "Installed in Stock Item" #~ msgid "Only single stock items exists" -#~ msgstr "In Lagerobjekt installiert" +#~ msgstr "In BestandsObjekt installiert" #, fuzzy #~| msgid "This stock item is allocated to Build" #~ msgid "The stock item is not already allocated to this build" -#~ msgstr "Dieses Lagerobjekt ist dem Bau zugewiesen" +#~ msgstr "Dieses BestandsObjekt ist dem Bau zugewiesen" #~ msgid "Warning: Build order allocation is not complete" #~ msgstr "Warnung: Bau-Zuweisung ist unvollständig" #~ msgid "" -#~ "Build Order has not been fully allocated. Ensure that all Stock Items " -#~ "have been allocated to the Build" +#~ "Build Order has not been fully allocated. Ensure that all Stock Items have been allocated to the " +#~ "Build" #~ msgstr "" -#~ "Bau-Zuweisung ist unvollständig. Sicherstellen, dass alle Lagerobjekte " -#~ "dem Bau zugewiesen wurden" +#~ "Bau-Zuweisung ist unvollständig. Sicherstellen, dass alle BestandsObjekt dem Bau zugewiesen wurden" #~ msgid "The following actions will be performed:" #~ msgstr "Die folgenden Aktionen werden ausgeführt:" @@ -7020,11 +6412,8 @@ msgstr "Berechtigung Einträge zu löschen" #~ msgstr "Eltern-Bau, dem dieser Bau zugewiesen ist" #~ msgid "" -#~ "Stock Items are selected for automatic allocation if there is only a " -#~ "single stock item available." -#~ msgstr "" -#~ "Teile werden automatisch zugewiesen, wenn nur ein Lagerobjekt verfügbar " -#~ "ist" +#~ "Stock Items are selected for automatic allocation if there is only a single stock item available." +#~ msgstr "Teile werden automatisch zugewiesen, wenn nur ein BestandsObjekt verfügbar ist" #~ msgid "Title" #~ msgstr "Titel" @@ -7089,7 +6478,7 @@ msgstr "Berechtigung Einträge zu löschen" #, fuzzy #~| msgid "Added stock to {n} items" #~ msgid "Uninstall selected stock items" -#~ msgstr "Vorrat zu {n} Lagerobjekten hinzugefügt" +#~ msgstr "Vorrat zu {n} BestandsObjekten hinzugefügt" #~ msgid "Order Multiple" #~ msgstr "Bestellvielfaches" @@ -7108,18 +6497,17 @@ msgstr "Berechtigung Einträge zu löschen" #, fuzzy #~| msgid "" -#~| "This stock item is serialized - it has a unique serial number and the " -#~| "quantity cannot be adjusted." +#~| "This stock item is serialized - it has a unique serial number and the quantity cannot be adjusted." #~ msgid "Stock item is serialized and quantity cannot be adjusted" #~ msgstr "" -#~ "Dieses Lagerobjekt ist serialisiert. Es hat eine eindeutige Seriennummer " -#~ "und die Anzahl kann nicht angepasst werden." +#~ "Dieses BestandsObjekt ist serialisiert. Es hat eine eindeutige Seriennummer und die Anzahl kann " +#~ "nicht angepasst werden." #~ msgid "Used for Build" #~ msgstr "Verwendet für Bau" #~ msgid "Count stock items" -#~ msgstr "Lagerobjekte zählen" +#~ msgstr "BestandsObjekt zählen" #~ msgid "Barcode successfully decoded" #~ msgstr "Strichcode erfolgreich dekodiert" @@ -7131,7 +6519,7 @@ msgstr "Berechtigung Einträge zu löschen" #~ msgstr "Lagerort existiert nicht" #~ msgid "StockItem does not exist" -#~ msgstr "Lagerobjekt existiert nicht" +#~ msgstr "BestandsObjekt existiert nicht" #, fuzzy #~| msgid "Add stock" @@ -7144,17 +6532,13 @@ msgstr "Berechtigung Einträge zu löschen" #~ msgstr "Aus Lagerbestand entfernen" #~ msgid "Copy Stock Item" -#~ msgstr "Lagerobjekt kopieren" +#~ msgstr "BestandsObjekt kopieren" #~ msgid "Part cannot be a variant of another part if it is already a template" -#~ msgstr "" -#~ "Teil kann keine Variante eines anderen Teils sein wenn es bereits eine " -#~ "Vorlage ist" +#~ msgstr "Teil kann keine Variante eines anderen Teils sein wenn es bereits eine Vorlage ist" #~ msgid "It is not a real part, but real parts can be based on this template." -#~ msgstr "" -#~ "Es ist kein echtes Teil, aber echte Teile können auf dieser Vorlage " -#~ "basieren." +#~ msgstr "Es ist kein echtes Teil, aber echte Teile können auf dieser Vorlage basieren." #~ msgid "Allocate" #~ msgstr "zuweisen" From b152f7041bbc2615f59cd2d57090657134473b47 Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 12 Mar 2021 10:30:31 -0500 Subject: [PATCH 02/82] Add setting to disable IPN editing after part is created (web only) --- InvenTree/common/models.py | 7 +++++++ InvenTree/part/views.py | 6 ++++++ InvenTree/templates/InvenTree/settings/part.html | 1 + 3 files changed, 14 insertions(+) diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index 06c06bde05..381888c588 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -97,6 +97,13 @@ class InvenTreeSetting(models.Model): 'validator': bool, }, + 'PART_ALLOW_EDIT_IPN': { + 'name': _('Allow Editing IPN'), + 'description': _('Allow changing the IPN value while editing a part'), + 'default': True, + 'validator': bool, + }, + 'PART_COPY_BOM': { 'name': _('Copy Part BOM Data'), 'description': _('Copy BOM data by default when duplicating a part'), diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py index 65f859566b..37704c5f46 100644 --- a/InvenTree/part/views.py +++ b/InvenTree/part/views.py @@ -910,6 +910,12 @@ class PartEdit(AjaxUpdateView): form.fields['default_supplier'].queryset = SupplierPart.objects.filter(part=part) + # Check if IPN can be edited + ipn_edit_enable = InvenTreeSetting.get_setting('PART_ALLOW_EDIT_IPN') + if not ipn_edit_enable and not self.request.user.is_superuser: + # Admin can still change IPN + form.fields['IPN'].disabled = True + return form diff --git a/InvenTree/templates/InvenTree/settings/part.html b/InvenTree/templates/InvenTree/settings/part.html index bef951e203..092d9c576c 100644 --- a/InvenTree/templates/InvenTree/settings/part.html +++ b/InvenTree/templates/InvenTree/settings/part.html @@ -18,6 +18,7 @@ {% include "InvenTree/settings/setting.html" with key="PART_IPN_REGEX" %} {% include "InvenTree/settings/setting.html" with key="PART_ALLOW_DUPLICATE_IPN" %} + {% include "InvenTree/settings/setting.html" with key="PART_ALLOW_EDIT_IPN" %} {% include "InvenTree/settings/setting.html" with key="PART_SHOW_QUANTITY_IN_FORMS" icon="fa-hashtag" %} {% include "InvenTree/settings/setting.html" with key="PART_RECENT_COUNT" icon="fa-clock" %} From 89c7c87f1ee13a57d7e794a4e2b39c43145bec7f Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 12 Mar 2021 11:18:19 -0500 Subject: [PATCH 03/82] Add stock filter for parts assemblies --- InvenTree/stock/api.py | 8 ++++++++ InvenTree/templates/js/table_filters.js | 7 ++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/InvenTree/stock/api.py b/InvenTree/stock/api.py index 60e511616a..b2ecadd275 100644 --- a/InvenTree/stock/api.py +++ b/InvenTree/stock/api.py @@ -665,6 +665,14 @@ class StockList(generics.ListCreateAPIView): active = str2bool(active) queryset = queryset.filter(part__active=active) + # Do we wish to filter by "assembly parts" + assembly = params.get('assembly', None) + + if assembly is not None: + print('ASSEMBLY') + assembly = str2bool(assembly) + queryset = queryset.filter(part__assembly=assembly) + # Filter by 'depleted' status depleted = params.get('depleted', None) diff --git a/InvenTree/templates/js/table_filters.js b/InvenTree/templates/js/table_filters.js index fb76d2731b..ba73244c74 100644 --- a/InvenTree/templates/js/table_filters.js +++ b/InvenTree/templates/js/table_filters.js @@ -96,10 +96,15 @@ function getAvailableTableFilters(tableKey) { title: '{% trans "Active parts" %}', description: '{% trans "Show stock for active parts" %}', }, + assembly: { + type: 'bool', + title: '{% trans "Assembly" %}', + description: '{% trans "Part is an assembly" %}', + }, allocated: { type: 'bool', title: '{% trans "Is allocated" %}', - description: '{% trans "Item has been alloacted" %}', + description: '{% trans "Item has been allocated" %}', }, cascade: { type: 'bool', From 429f9d0a13d39e8240b5edbef87f65cfbb943e07 Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 12 Mar 2021 11:19:20 -0500 Subject: [PATCH 04/82] Removed test print --- InvenTree/stock/api.py | 1 - 1 file changed, 1 deletion(-) diff --git a/InvenTree/stock/api.py b/InvenTree/stock/api.py index b2ecadd275..a7a7955c22 100644 --- a/InvenTree/stock/api.py +++ b/InvenTree/stock/api.py @@ -669,7 +669,6 @@ class StockList(generics.ListCreateAPIView): assembly = params.get('assembly', None) if assembly is not None: - print('ASSEMBLY') assembly = str2bool(assembly) queryset = queryset.filter(part__assembly=assembly) From acb0b2c10a8fd786d0b34a0797d1dd2ba06cc193 Mon Sep 17 00:00:00 2001 From: eeintech Date: Fri, 12 Mar 2021 11:46:56 -0500 Subject: [PATCH 05/82] Fixed build typo --- InvenTree/build/forms.py | 2 +- InvenTree/locale/de/LC_MESSAGES/django.po | 2 +- InvenTree/locale/en/LC_MESSAGES/django.po | 2 +- InvenTree/locale/es/LC_MESSAGES/django.po | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/InvenTree/build/forms.py b/InvenTree/build/forms.py index 061ae0d16d..4892fa631f 100644 --- a/InvenTree/build/forms.py +++ b/InvenTree/build/forms.py @@ -95,7 +95,7 @@ class BuildOutputCreateForm(HelperForm): confirm = forms.BooleanField( required=True, label=_('Confirm'), - help_text=_('Confirm creation of build outut'), + help_text=_('Confirm creation of build output'), ) class Meta: diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 046737f0e6..646f980738 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -351,7 +351,7 @@ msgid "Enter serial numbers for build outputs" msgstr "Seriennummer für dieses hergestelltes Teil eingeben" #: build/forms.py:98 -msgid "Confirm creation of build outut" +msgid "Confirm creation of build output" msgstr "Anlage Baufertigstellung bestätigen" #: build/forms.py:118 diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index e13bb2fcdb..178c537454 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -350,7 +350,7 @@ msgid "Enter serial numbers for build outputs" msgstr "" #: build/forms.py:98 -msgid "Confirm creation of build outut" +msgid "Confirm creation of build output" msgstr "" #: build/forms.py:118 diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index e13bb2fcdb..178c537454 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -350,7 +350,7 @@ msgid "Enter serial numbers for build outputs" msgstr "" #: build/forms.py:98 -msgid "Confirm creation of build outut" +msgid "Confirm creation of build output" msgstr "" #: build/forms.py:118 From 99188608204372ab160599ea734f4333507be804 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Mon, 15 Mar 2021 17:00:14 +1100 Subject: [PATCH 06/82] Small tweak for breadcrumb div css --- InvenTree/InvenTree/static/css/inventree.css | 2 ++ 1 file changed, 2 insertions(+) diff --git a/InvenTree/InvenTree/static/css/inventree.css b/InvenTree/InvenTree/static/css/inventree.css index 1c10897b6c..3650aa5ddf 100644 --- a/InvenTree/InvenTree/static/css/inventree.css +++ b/InvenTree/InvenTree/static/css/inventree.css @@ -586,6 +586,8 @@ .breadcrump { margin-bottom: 5px; + margin-left: 5px; + margin-right: 10px; } .inventree-body { From 2de879d2ba579100a1f360cf3459632cefa0191a Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Mon, 15 Mar 2021 20:30:18 +1100 Subject: [PATCH 07/82] Add option to hide form error message --- InvenTree/part/templates/part/part_base.html | 1 + InvenTree/templates/js/modals.js | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/InvenTree/part/templates/part/part_base.html b/InvenTree/part/templates/part/part_base.html index 1072d7652b..ebcbdef03a 100644 --- a/InvenTree/part/templates/part/part_base.html +++ b/InvenTree/part/templates/part/part_base.html @@ -241,6 +241,7 @@ "{% url 'part-pricing' part.id %}", { submit_text: 'Calculate', + hideErrorMessage: true, } ); }); diff --git a/InvenTree/templates/js/modals.js b/InvenTree/templates/js/modals.js index 33be851d83..12639749f6 100644 --- a/InvenTree/templates/js/modals.js +++ b/InvenTree/templates/js/modals.js @@ -739,9 +739,10 @@ function handleModalForm(url, options) { // Form was returned, invalid! else { - var warningDiv = $(modal).find('#form-validation-warning'); - - warningDiv.css('display', 'block'); + if (!options.hideErrorMessage) { + var warningDiv = $(modal).find('#form-validation-warning'); + warningDiv.css('display', 'block'); + } if (response.html_form) { injectModalForm(modal, response.html_form); From d39bd88440ebeb260b521c057a90ad18c87d514f Mon Sep 17 00:00:00 2001 From: eeintech Date: Mon, 15 Mar 2021 09:41:04 -0400 Subject: [PATCH 08/82] Split required and part match headers for BOM import --- InvenTree/part/bom.py | 12 ++++++++---- InvenTree/part/views.py | 13 +++++++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/InvenTree/part/bom.py b/InvenTree/part/bom.py index 092b3e3183..ccde26e2f7 100644 --- a/InvenTree/part/bom.py +++ b/InvenTree/part/bom.py @@ -232,14 +232,18 @@ class BomUploadManager: # Fields which are absolutely necessary for valid upload REQUIRED_HEADERS = [ - 'Part_Name', 'Quantity' ] + + # Fields which are used for part matching (only one of them is needed) + PART_MATCH_HEADERS = [ + 'Part_Name', + 'Part_IPN', + 'Part_ID', + ] # Fields which would be helpful but are not required OPTIONAL_HEADERS = [ - 'Part_IPN', - 'Part_ID', 'Reference', 'Note', 'Overage', @@ -251,7 +255,7 @@ class BomUploadManager: 'Overage' ] - HEADERS = REQUIRED_HEADERS + OPTIONAL_HEADERS + HEADERS = REQUIRED_HEADERS + PART_MATCH_HEADERS + OPTIONAL_HEADERS def __init__(self, bom_file): """ Initialize the BomUpload class with a user-uploaded file object """ diff --git a/InvenTree/part/views.py b/InvenTree/part/views.py index 65f859566b..b4400bcb6d 100644 --- a/InvenTree/part/views.py +++ b/InvenTree/part/views.py @@ -1425,10 +1425,23 @@ class BomUpload(InvenTreeRoleMixin, FormView): # Are there any missing columns? self.missing_columns = [] + # Check that all required fields are present for col in BomUploadManager.REQUIRED_HEADERS: if col not in self.column_selections.values(): self.missing_columns.append(col) + # Check that at least one of the part match field is present + part_match_found = False + for col in BomUploadManager.PART_MATCH_HEADERS: + if col in self.column_selections.values(): + part_match_found = True + break + + # If not, notify user + if not part_match_found: + for col in BomUploadManager.PART_MATCH_HEADERS: + self.missing_columns.append(col) + def handleFieldSelection(self): """ Handle the output of the field selection form. Here the user is presented with the raw data and must select the From 64a57128bc78ce137ad47e6ebeaf623a80d81a3c Mon Sep 17 00:00:00 2001 From: eeintech Date: Mon, 15 Mar 2021 10:36:12 -0400 Subject: [PATCH 09/82] Return True for BOM valid flag if part does not have BOM items --- InvenTree/part/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/InvenTree/part/models.py b/InvenTree/part/models.py index b06469699b..2824a89e75 100644 --- a/InvenTree/part/models.py +++ b/InvenTree/part/models.py @@ -1372,7 +1372,7 @@ class Part(MPTTModel): """ Check if the BOM is 'valid' - if the calculated checksum matches the stored value """ - return self.get_bom_hash() == self.bom_checksum + return self.get_bom_hash() == self.bom_checksum or not self.has_bom @transaction.atomic def validate_bom(self, user): From 6946abae1330e614b8cf19ef7e1e8b1aba6b165d Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Tue, 16 Mar 2021 16:42:33 +1100 Subject: [PATCH 10/82] CSS fix for modal error info dialog --- InvenTree/templates/modals.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/InvenTree/templates/modals.html b/InvenTree/templates/modals.html index 11166751f8..dea7a8bbfa 100644 --- a/InvenTree/templates/modals.html +++ b/InvenTree/templates/modals.html @@ -78,7 +78,9 @@ -