mirror of
				https://github.com/inventree/InvenTree.git
				synced 2025-11-03 22:55:43 +00:00 
			
		
		
		
	Add translation strings for part models
This commit is contained in:
		@@ -8,7 +8,7 @@ msgid ""
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2019-11-16 09:28+0000\n"
 | 
					"POT-Creation-Date: 2019-11-18 21:41+0000\n"
 | 
				
			||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
					"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
				
			||||||
@@ -324,6 +324,14 @@ msgstr ""
 | 
				
			|||||||
msgid "Select currency for price calculation"
 | 
					msgid "Select currency for price calculation"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:56
 | 
				
			||||||
 | 
					msgid "Default location for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:59
 | 
				
			||||||
 | 
					msgid "Default keywords for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:308
 | 
					#: part/models.py:308
 | 
				
			||||||
msgid "Part must be unique for name, IPN and revision"
 | 
					msgid "Part must be unique for name, IPN and revision"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -336,10 +344,150 @@ msgstr ""
 | 
				
			|||||||
msgid "Part cannot be a variant of another part if it is already a template"
 | 
					msgid "Part cannot be a variant of another part if it is already a template"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:327 part/templates/part/detail.html:16
 | 
				
			||||||
 | 
					msgid "Part name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:331
 | 
				
			||||||
 | 
					msgid "Is this part a template part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:340
 | 
				
			||||||
 | 
					msgid "Is this part a variant of another part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:342
 | 
				
			||||||
 | 
					msgid "Part description"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:344
 | 
				
			||||||
 | 
					msgid "Part keywords to improve visibility in search results"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:349
 | 
				
			||||||
 | 
					msgid "Part category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:351
 | 
				
			||||||
 | 
					msgid "Internal Part Number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:353
 | 
				
			||||||
 | 
					msgid "Part revision or version number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:355
 | 
				
			||||||
 | 
					msgid "Link to extenal URL"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:361
 | 
				
			||||||
 | 
					msgid "Where is this item normally stored?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:405
 | 
				
			||||||
 | 
					msgid "Default supplier part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:408
 | 
				
			||||||
 | 
					msgid "Minimum allowed stock level"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:410
 | 
				
			||||||
 | 
					msgid "Stock keeping units for this part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:412
 | 
				
			||||||
 | 
					msgid "Can this part be built from other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:414
 | 
				
			||||||
 | 
					msgid "Can this part be used to build other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:416
 | 
				
			||||||
 | 
					msgid "Does this part have tracking for unique items?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:418
 | 
				
			||||||
 | 
					msgid "Can this part be purchased from external suppliers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:420
 | 
				
			||||||
 | 
					msgid "Can this part be sold to customers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:422
 | 
				
			||||||
 | 
					msgid "Is this part active?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:424
 | 
				
			||||||
 | 
					msgid "Is this a virtual part, such as a software product or license?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:428
 | 
				
			||||||
 | 
					msgid "Stored BOM checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:935
 | 
				
			||||||
 | 
					msgid "Select file to attach"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:937
 | 
				
			||||||
 | 
					msgid "File comment"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:992
 | 
					#: part/models.py:992
 | 
				
			||||||
msgid "Parameter template name must be unique"
 | 
					msgid "Parameter template name must be unique"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:997
 | 
				
			||||||
 | 
					msgid "Parameter Name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:999
 | 
				
			||||||
 | 
					msgid "Parameter Units"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1025
 | 
				
			||||||
 | 
					msgid "Parent Part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1027
 | 
				
			||||||
 | 
					msgid "Parameter Template"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1029
 | 
				
			||||||
 | 
					msgid "Parameter Value"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1053
 | 
				
			||||||
 | 
					msgid "Select parent part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1061
 | 
				
			||||||
 | 
					msgid "Select part to be used in BOM"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1067
 | 
				
			||||||
 | 
					msgid "BOM quantity for this BOM item"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1070
 | 
				
			||||||
 | 
					msgid "Estimated build wastage quantity (absolute or percentage)"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1073
 | 
				
			||||||
 | 
					msgid "BOM item reference"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1076
 | 
				
			||||||
 | 
					msgid "BOM item notes"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1078
 | 
				
			||||||
 | 
					msgid "BOM line checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:1141
 | 
					#: part/models.py:1141
 | 
				
			||||||
msgid "Part cannot be added to its own Bill of Materials"
 | 
					msgid "Part cannot be added to its own Bill of Materials"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -393,10 +541,6 @@ msgstr ""
 | 
				
			|||||||
msgid "Parts"
 | 
					msgid "Parts"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/templates/part/detail.html:16
 | 
					 | 
				
			||||||
msgid "Part name"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: part/templates/part/detail.html:21
 | 
					#: part/templates/part/detail.html:21
 | 
				
			||||||
msgid "IPN"
 | 
					msgid "IPN"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,7 +8,7 @@ msgid ""
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2019-11-16 09:28+0000\n"
 | 
					"POT-Creation-Date: 2019-11-18 21:41+0000\n"
 | 
				
			||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
					"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
				
			||||||
@@ -324,6 +324,14 @@ msgstr ""
 | 
				
			|||||||
msgid "Select currency for price calculation"
 | 
					msgid "Select currency for price calculation"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:56
 | 
				
			||||||
 | 
					msgid "Default location for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:59
 | 
				
			||||||
 | 
					msgid "Default keywords for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:308
 | 
					#: part/models.py:308
 | 
				
			||||||
msgid "Part must be unique for name, IPN and revision"
 | 
					msgid "Part must be unique for name, IPN and revision"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -336,10 +344,150 @@ msgstr ""
 | 
				
			|||||||
msgid "Part cannot be a variant of another part if it is already a template"
 | 
					msgid "Part cannot be a variant of another part if it is already a template"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:327 part/templates/part/detail.html:16
 | 
				
			||||||
 | 
					msgid "Part name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:331
 | 
				
			||||||
 | 
					msgid "Is this part a template part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:340
 | 
				
			||||||
 | 
					msgid "Is this part a variant of another part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:342
 | 
				
			||||||
 | 
					msgid "Part description"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:344
 | 
				
			||||||
 | 
					msgid "Part keywords to improve visibility in search results"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:349
 | 
				
			||||||
 | 
					msgid "Part category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:351
 | 
				
			||||||
 | 
					msgid "Internal Part Number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:353
 | 
				
			||||||
 | 
					msgid "Part revision or version number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:355
 | 
				
			||||||
 | 
					msgid "Link to extenal URL"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:361
 | 
				
			||||||
 | 
					msgid "Where is this item normally stored?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:405
 | 
				
			||||||
 | 
					msgid "Default supplier part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:408
 | 
				
			||||||
 | 
					msgid "Minimum allowed stock level"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:410
 | 
				
			||||||
 | 
					msgid "Stock keeping units for this part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:412
 | 
				
			||||||
 | 
					msgid "Can this part be built from other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:414
 | 
				
			||||||
 | 
					msgid "Can this part be used to build other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:416
 | 
				
			||||||
 | 
					msgid "Does this part have tracking for unique items?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:418
 | 
				
			||||||
 | 
					msgid "Can this part be purchased from external suppliers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:420
 | 
				
			||||||
 | 
					msgid "Can this part be sold to customers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:422
 | 
				
			||||||
 | 
					msgid "Is this part active?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:424
 | 
				
			||||||
 | 
					msgid "Is this a virtual part, such as a software product or license?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:428
 | 
				
			||||||
 | 
					msgid "Stored BOM checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:935
 | 
				
			||||||
 | 
					msgid "Select file to attach"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:937
 | 
				
			||||||
 | 
					msgid "File comment"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:992
 | 
					#: part/models.py:992
 | 
				
			||||||
msgid "Parameter template name must be unique"
 | 
					msgid "Parameter template name must be unique"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:997
 | 
				
			||||||
 | 
					msgid "Parameter Name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:999
 | 
				
			||||||
 | 
					msgid "Parameter Units"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1025
 | 
				
			||||||
 | 
					msgid "Parent Part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1027
 | 
				
			||||||
 | 
					msgid "Parameter Template"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1029
 | 
				
			||||||
 | 
					msgid "Parameter Value"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1053
 | 
				
			||||||
 | 
					msgid "Select parent part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1061
 | 
				
			||||||
 | 
					msgid "Select part to be used in BOM"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1067
 | 
				
			||||||
 | 
					msgid "BOM quantity for this BOM item"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1070
 | 
				
			||||||
 | 
					msgid "Estimated build wastage quantity (absolute or percentage)"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1073
 | 
				
			||||||
 | 
					msgid "BOM item reference"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1076
 | 
				
			||||||
 | 
					msgid "BOM item notes"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1078
 | 
				
			||||||
 | 
					msgid "BOM line checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:1141
 | 
					#: part/models.py:1141
 | 
				
			||||||
msgid "Part cannot be added to its own Bill of Materials"
 | 
					msgid "Part cannot be added to its own Bill of Materials"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -393,10 +541,6 @@ msgstr ""
 | 
				
			|||||||
msgid "Parts"
 | 
					msgid "Parts"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/templates/part/detail.html:16
 | 
					 | 
				
			||||||
msgid "Part name"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: part/templates/part/detail.html:21
 | 
					#: part/templates/part/detail.html:21
 | 
				
			||||||
msgid "IPN"
 | 
					msgid "IPN"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -8,7 +8,7 @@ msgid ""
 | 
				
			|||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2019-11-16 09:28+0000\n"
 | 
					"POT-Creation-Date: 2019-11-18 21:41+0000\n"
 | 
				
			||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
					"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
				
			||||||
@@ -324,6 +324,14 @@ msgstr ""
 | 
				
			|||||||
msgid "Select currency for price calculation"
 | 
					msgid "Select currency for price calculation"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:56
 | 
				
			||||||
 | 
					msgid "Default location for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:59
 | 
				
			||||||
 | 
					msgid "Default keywords for parts in this category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:308
 | 
					#: part/models.py:308
 | 
				
			||||||
msgid "Part must be unique for name, IPN and revision"
 | 
					msgid "Part must be unique for name, IPN and revision"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -336,10 +344,150 @@ msgstr ""
 | 
				
			|||||||
msgid "Part cannot be a variant of another part if it is already a template"
 | 
					msgid "Part cannot be a variant of another part if it is already a template"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:327 part/templates/part/detail.html:16
 | 
				
			||||||
 | 
					msgid "Part name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:331
 | 
				
			||||||
 | 
					msgid "Is this part a template part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:340
 | 
				
			||||||
 | 
					msgid "Is this part a variant of another part?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:342
 | 
				
			||||||
 | 
					msgid "Part description"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:344
 | 
				
			||||||
 | 
					msgid "Part keywords to improve visibility in search results"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:349
 | 
				
			||||||
 | 
					msgid "Part category"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:351
 | 
				
			||||||
 | 
					msgid "Internal Part Number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:353
 | 
				
			||||||
 | 
					msgid "Part revision or version number"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:355
 | 
				
			||||||
 | 
					msgid "Link to extenal URL"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:361
 | 
				
			||||||
 | 
					msgid "Where is this item normally stored?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:405
 | 
				
			||||||
 | 
					msgid "Default supplier part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:408
 | 
				
			||||||
 | 
					msgid "Minimum allowed stock level"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:410
 | 
				
			||||||
 | 
					msgid "Stock keeping units for this part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:412
 | 
				
			||||||
 | 
					msgid "Can this part be built from other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:414
 | 
				
			||||||
 | 
					msgid "Can this part be used to build other parts?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:416
 | 
				
			||||||
 | 
					msgid "Does this part have tracking for unique items?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:418
 | 
				
			||||||
 | 
					msgid "Can this part be purchased from external suppliers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:420
 | 
				
			||||||
 | 
					msgid "Can this part be sold to customers?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:422
 | 
				
			||||||
 | 
					msgid "Is this part active?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:424
 | 
				
			||||||
 | 
					msgid "Is this a virtual part, such as a software product or license?"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:428
 | 
				
			||||||
 | 
					msgid "Stored BOM checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:935
 | 
				
			||||||
 | 
					msgid "Select file to attach"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:937
 | 
				
			||||||
 | 
					msgid "File comment"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:992
 | 
					#: part/models.py:992
 | 
				
			||||||
msgid "Parameter template name must be unique"
 | 
					msgid "Parameter template name must be unique"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:997
 | 
				
			||||||
 | 
					msgid "Parameter Name"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:999
 | 
				
			||||||
 | 
					msgid "Parameter Units"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1025
 | 
				
			||||||
 | 
					msgid "Parent Part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1027
 | 
				
			||||||
 | 
					msgid "Parameter Template"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1029
 | 
				
			||||||
 | 
					msgid "Parameter Value"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1053
 | 
				
			||||||
 | 
					msgid "Select parent part"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1061
 | 
				
			||||||
 | 
					msgid "Select part to be used in BOM"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1067
 | 
				
			||||||
 | 
					msgid "BOM quantity for this BOM item"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1070
 | 
				
			||||||
 | 
					msgid "Estimated build wastage quantity (absolute or percentage)"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1073
 | 
				
			||||||
 | 
					msgid "BOM item reference"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1076
 | 
				
			||||||
 | 
					msgid "BOM item notes"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: part/models.py:1078
 | 
				
			||||||
 | 
					msgid "BOM line checksum"
 | 
				
			||||||
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/models.py:1141
 | 
					#: part/models.py:1141
 | 
				
			||||||
msgid "Part cannot be added to its own Bill of Materials"
 | 
					msgid "Part cannot be added to its own Bill of Materials"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
@@ -393,10 +541,6 @@ msgstr ""
 | 
				
			|||||||
msgid "Parts"
 | 
					msgid "Parts"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: part/templates/part/detail.html:16
 | 
					 | 
				
			||||||
msgid "Part name"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: part/templates/part/detail.html:21
 | 
					#: part/templates/part/detail.html:21
 | 
				
			||||||
msgid "IPN"
 | 
					msgid "IPN"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -53,10 +53,10 @@ class PartCategory(InvenTreeTree):
 | 
				
			|||||||
        'stock.StockLocation', related_name="default_categories",
 | 
					        'stock.StockLocation', related_name="default_categories",
 | 
				
			||||||
        null=True, blank=True,
 | 
					        null=True, blank=True,
 | 
				
			||||||
        on_delete=models.SET_NULL,
 | 
					        on_delete=models.SET_NULL,
 | 
				
			||||||
        help_text='Default location for parts in this category'
 | 
					        help_text=_('Default location for parts in this category')
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    default_keywords = models.CharField(blank=True, max_length=250, help_text='Default keywords for parts in this category')
 | 
					    default_keywords = models.CharField(blank=True, max_length=250, help_text=_('Default keywords for parts in this category'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def get_absolute_url(self):
 | 
					    def get_absolute_url(self):
 | 
				
			||||||
        return reverse('category-detail', kwargs={'pk': self.id})
 | 
					        return reverse('category-detail', kwargs={'pk': self.id})
 | 
				
			||||||
@@ -324,11 +324,11 @@ class Part(models.Model):
 | 
				
			|||||||
            })
 | 
					            })
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    name = models.CharField(max_length=100, blank=False,
 | 
					    name = models.CharField(max_length=100, blank=False,
 | 
				
			||||||
                            help_text='Part name',
 | 
					                            help_text=_('Part name'),
 | 
				
			||||||
                            validators=[validators.validate_part_name]
 | 
					                            validators=[validators.validate_part_name]
 | 
				
			||||||
                            )
 | 
					                            )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    is_template = models.BooleanField(default=False, help_text='Is this part a template part?')
 | 
					    is_template = models.BooleanField(default=False, help_text=_('Is this part a template part?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    variant_of = models.ForeignKey('part.Part', related_name='variants',
 | 
					    variant_of = models.ForeignKey('part.Part', related_name='variants',
 | 
				
			||||||
                                   null=True, blank=True,
 | 
					                                   null=True, blank=True,
 | 
				
			||||||
@@ -337,28 +337,28 @@ class Part(models.Model):
 | 
				
			|||||||
                                       'active': True,
 | 
					                                       'active': True,
 | 
				
			||||||
                                   },
 | 
					                                   },
 | 
				
			||||||
                                   on_delete=models.SET_NULL,
 | 
					                                   on_delete=models.SET_NULL,
 | 
				
			||||||
                                   help_text='Is this part a variant of another part?')
 | 
					                                   help_text=_('Is this part a variant of another part?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    description = models.CharField(max_length=250, blank=False, help_text='Part description')
 | 
					    description = models.CharField(max_length=250, blank=False, help_text=_('Part description'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    keywords = models.CharField(max_length=250, blank=True, help_text='Part keywords to improve visibility in search results')
 | 
					    keywords = models.CharField(max_length=250, blank=True, help_text=_('Part keywords to improve visibility in search results'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    category = TreeForeignKey(PartCategory, related_name='parts',
 | 
					    category = TreeForeignKey(PartCategory, related_name='parts',
 | 
				
			||||||
                              null=True, blank=True,
 | 
					                              null=True, blank=True,
 | 
				
			||||||
                              on_delete=models.DO_NOTHING,
 | 
					                              on_delete=models.DO_NOTHING,
 | 
				
			||||||
                              help_text='Part category')
 | 
					                              help_text=_('Part category'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    IPN = models.CharField(max_length=100, blank=True, help_text='Internal Part Number')
 | 
					    IPN = models.CharField(max_length=100, blank=True, help_text=_('Internal Part Number'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    revision = models.CharField(max_length=100, blank=True, help_text='Part revision or version number')
 | 
					    revision = models.CharField(max_length=100, blank=True, help_text=_('Part revision or version number'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    URL = InvenTreeURLField(blank=True, help_text='Link to extenal URL')
 | 
					    URL = InvenTreeURLField(blank=True, help_text=_('Link to extenal URL'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    image = models.ImageField(upload_to=rename_part_image, max_length=255, null=True, blank=True)
 | 
					    image = models.ImageField(upload_to=rename_part_image, max_length=255, null=True, blank=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    default_location = TreeForeignKey('stock.StockLocation', on_delete=models.SET_NULL,
 | 
					    default_location = TreeForeignKey('stock.StockLocation', on_delete=models.SET_NULL,
 | 
				
			||||||
                                      blank=True, null=True,
 | 
					                                      blank=True, null=True,
 | 
				
			||||||
                                      help_text='Where is this item normally stored?',
 | 
					                                      help_text=_('Where is this item normally stored?'),
 | 
				
			||||||
                                      related_name='default_parts')
 | 
					                                      related_name='default_parts')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def get_default_location(self):
 | 
					    def get_default_location(self):
 | 
				
			||||||
@@ -402,30 +402,30 @@ class Part(models.Model):
 | 
				
			|||||||
    default_supplier = models.ForeignKey(SupplierPart,
 | 
					    default_supplier = models.ForeignKey(SupplierPart,
 | 
				
			||||||
                                         on_delete=models.SET_NULL,
 | 
					                                         on_delete=models.SET_NULL,
 | 
				
			||||||
                                         blank=True, null=True,
 | 
					                                         blank=True, null=True,
 | 
				
			||||||
                                         help_text='Default supplier part',
 | 
					                                         help_text=_('Default supplier part'),
 | 
				
			||||||
                                         related_name='default_parts')
 | 
					                                         related_name='default_parts')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    minimum_stock = models.PositiveIntegerField(default=0, validators=[MinValueValidator(0)], help_text='Minimum allowed stock level')
 | 
					    minimum_stock = models.PositiveIntegerField(default=0, validators=[MinValueValidator(0)], help_text=_('Minimum allowed stock level'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    units = models.CharField(max_length=20, default="pcs", blank=True, help_text='Stock keeping units for this part')
 | 
					    units = models.CharField(max_length=20, default="pcs", blank=True, help_text=_('Stock keeping units for this part'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    assembly = models.BooleanField(default=False, verbose_name='Assembly', help_text='Can this part be built from other parts?')
 | 
					    assembly = models.BooleanField(default=False, verbose_name='Assembly', help_text=_('Can this part be built from other parts?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    component = models.BooleanField(default=True, verbose_name='Component', help_text='Can this part be used to build other parts?')
 | 
					    component = models.BooleanField(default=True, verbose_name='Component', help_text=_('Can this part be used to build other parts?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    trackable = models.BooleanField(default=False, help_text='Does this part have tracking for unique items?')
 | 
					    trackable = models.BooleanField(default=False, help_text=_('Does this part have tracking for unique items?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    purchaseable = models.BooleanField(default=True, help_text='Can this part be purchased from external suppliers?')
 | 
					    purchaseable = models.BooleanField(default=True, help_text=_('Can this part be purchased from external suppliers?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    salable = models.BooleanField(default=False, help_text="Can this part be sold to customers?")
 | 
					    salable = models.BooleanField(default=False, help_text=_("Can this part be sold to customers?"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    active = models.BooleanField(default=True, help_text='Is this part active?')
 | 
					    active = models.BooleanField(default=True, help_text=_('Is this part active?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    virtual = models.BooleanField(default=False, help_text='Is this a virtual part, such as a software product or license?')
 | 
					    virtual = models.BooleanField(default=False, help_text=_('Is this a virtual part, such as a software product or license?'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    notes = models.TextField(blank=True)
 | 
					    notes = models.TextField(blank=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    bom_checksum = models.CharField(max_length=128, blank=True, help_text='Stored BOM checksum')
 | 
					    bom_checksum = models.CharField(max_length=128, blank=True, help_text=_('Stored BOM checksum'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    bom_checked_by = models.ForeignKey(User, on_delete=models.SET_NULL, blank=True, null=True,
 | 
					    bom_checked_by = models.ForeignKey(User, on_delete=models.SET_NULL, blank=True, null=True,
 | 
				
			||||||
                                       related_name='boms_checked')
 | 
					                                       related_name='boms_checked')
 | 
				
			||||||
@@ -932,9 +932,9 @@ class PartAttachment(models.Model):
 | 
				
			|||||||
                             related_name='attachments')
 | 
					                             related_name='attachments')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    attachment = models.FileField(upload_to=attach_file,
 | 
					    attachment = models.FileField(upload_to=attach_file,
 | 
				
			||||||
                                  help_text='Select file to attach')
 | 
					                                  help_text=_('Select file to attach'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    comment = models.CharField(max_length=100, help_text='File comment')
 | 
					    comment = models.CharField(max_length=100, help_text=_('File comment'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @property
 | 
					    @property
 | 
				
			||||||
    def basename(self):
 | 
					    def basename(self):
 | 
				
			||||||
@@ -994,9 +994,9 @@ class PartParameterTemplate(models.Model):
 | 
				
			|||||||
        except PartParameterTemplate.DoesNotExist:
 | 
					        except PartParameterTemplate.DoesNotExist:
 | 
				
			||||||
            pass
 | 
					            pass
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    name = models.CharField(max_length=100, help_text='Parameter Name', unique=True)
 | 
					    name = models.CharField(max_length=100, help_text=_('Parameter Name'), unique=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    units = models.CharField(max_length=25, help_text='Parameter Units', blank=True)
 | 
					    units = models.CharField(max_length=25, help_text=_('Parameter Units'), blank=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class PartParameter(models.Model):
 | 
					class PartParameter(models.Model):
 | 
				
			||||||
@@ -1022,11 +1022,11 @@ class PartParameter(models.Model):
 | 
				
			|||||||
        # Prevent multiple instances of a parameter for a single part
 | 
					        # Prevent multiple instances of a parameter for a single part
 | 
				
			||||||
        unique_together = ('part', 'template')
 | 
					        unique_together = ('part', 'template')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='parameters', help_text='Parent Part')
 | 
					    part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='parameters', help_text=_('Parent Part'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    template = models.ForeignKey(PartParameterTemplate, on_delete=models.CASCADE, related_name='instances', help_text='Parameter Template')
 | 
					    template = models.ForeignKey(PartParameterTemplate, on_delete=models.CASCADE, related_name='instances', help_text=_('Parameter Template'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    data = models.CharField(max_length=500, help_text='Parameter Value')
 | 
					    data = models.CharField(max_length=500, help_text=_('Parameter Value'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class BomItem(models.Model):
 | 
					class BomItem(models.Model):
 | 
				
			||||||
@@ -1050,7 +1050,7 @@ class BomItem(models.Model):
 | 
				
			|||||||
    # A link to the parent part
 | 
					    # A link to the parent part
 | 
				
			||||||
    # Each part will get a reverse lookup field 'bom_items'
 | 
					    # Each part will get a reverse lookup field 'bom_items'
 | 
				
			||||||
    part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='bom_items',
 | 
					    part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='bom_items',
 | 
				
			||||||
                             help_text='Select parent part',
 | 
					                             help_text=_('Select parent part'),
 | 
				
			||||||
                             limit_choices_to={
 | 
					                             limit_choices_to={
 | 
				
			||||||
                                 'assembly': True,
 | 
					                                 'assembly': True,
 | 
				
			||||||
                             })
 | 
					                             })
 | 
				
			||||||
@@ -1058,7 +1058,7 @@ class BomItem(models.Model):
 | 
				
			|||||||
    # A link to the child item (sub-part)
 | 
					    # A link to the child item (sub-part)
 | 
				
			||||||
    # Each part will get a reverse lookup field 'used_in'
 | 
					    # Each part will get a reverse lookup field 'used_in'
 | 
				
			||||||
    sub_part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='used_in',
 | 
					    sub_part = models.ForeignKey(Part, on_delete=models.CASCADE, related_name='used_in',
 | 
				
			||||||
                                 help_text='Select part to be used in BOM',
 | 
					                                 help_text=_('Select part to be used in BOM'),
 | 
				
			||||||
                                 limit_choices_to={
 | 
					                                 limit_choices_to={
 | 
				
			||||||
                                     'component': True,
 | 
					                                     'component': True,
 | 
				
			||||||
                                 })
 | 
					                                 })
 | 
				
			||||||
@@ -1067,15 +1067,15 @@ class BomItem(models.Model):
 | 
				
			|||||||
    quantity = models.PositiveIntegerField(default=1, validators=[MinValueValidator(0)], help_text='BOM quantity for this BOM item')
 | 
					    quantity = models.PositiveIntegerField(default=1, validators=[MinValueValidator(0)], help_text='BOM quantity for this BOM item')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    overage = models.CharField(max_length=24, blank=True, validators=[validators.validate_overage],
 | 
					    overage = models.CharField(max_length=24, blank=True, validators=[validators.validate_overage],
 | 
				
			||||||
                               help_text='Estimated build wastage quantity (absolute or percentage)'
 | 
					                               help_text=_('Estimated build wastage quantity (absolute or percentage)')
 | 
				
			||||||
                               )
 | 
					                               )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    reference = models.CharField(max_length=500, blank=True, help_text='BOM item reference')
 | 
					    reference = models.CharField(max_length=500, blank=True, help_text=_('BOM item reference'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Note attached to this BOM line item
 | 
					    # Note attached to this BOM line item
 | 
				
			||||||
    note = models.CharField(max_length=500, blank=True, help_text='BOM item notes')
 | 
					    note = models.CharField(max_length=500, blank=True, help_text=_('BOM item notes'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    checksum = models.CharField(max_length=128, blank=True, help_text='BOM line checksum')
 | 
					    checksum = models.CharField(max_length=128, blank=True, help_text=_('BOM line checksum'))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def get_item_hash(self):
 | 
					    def get_item_hash(self):
 | 
				
			||||||
        """ Calculate the checksum hash of this BOM line item:
 | 
					        """ Calculate the checksum hash of this BOM line item:
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user