bugatti proto labe dev

This commit is contained in:
edo-neo 2025-09-29 13:40:38 +02:00
parent 789d63c745
commit 260c8711af
3 changed files with 14 additions and 46 deletions

View File

@ -1,33 +0,0 @@
CT~~CD,~CC^~CT~
^XA
~TA000
~JSN
^LT0
^MNW
^MTT
^PON
^PMN
^LH0,0
^JMA
^PR2,2
~SD20
^JUS
^LRN
^CI27
^PA0,1,1,0
^XZ
^XA
^MMT
^PW472
^LL1417
^LS0
^FT99,1360^A0B,29,28^FH\^CI28^FDPart Name: {TEXT_1}^FS^CI27
^FT172,1360^A0B,29,28^FH\^CI28^FDPart Number: {PART_NUMBER}^FS^CI27
^FT248,1360^A0B,29,28^FH\^CI28^FDDUNS Number: {TEXT_2}^FS^CI27
^FT335,1360^A0B,29,28^FH\^CI28^FDSerial Nunmber: {PART_NUMBER}{SN4}{MO}{YY}^FS^CI27
^FT413,1360^A0B,29,28^FH\^CI28^FDManufacuring date:{DD}.{MO}.{YY} {HH}:{MM}(Julian)^FS^CI27
^FT417,370^BXB,8,200,0,0,1,_,1
^FH\^FD{PART__NUMBER}#000#{TEXT__1}#{TEXT__2}#{DD}{MO}{YY}#{TEXT__3}#{SN7}#{MOD__43:44:14}#=^FS
^FO49,91^GFA,725,2484,9,:Z64:eJy9lj1Ow0AQhcc2KBFNjmB6Co5gCiROQIm4BL1XokFwiZRWKDhCLFFwDFxGUOCOCIUd5teBGBEpRBlb9tOnZHfe7OwmybNGnaFGk5jYkKQTjTFsO7JoIok7JHh+wdfJtuqTxcnkliLs1MUVbBKnO8xwSW4kwn/r/Evld+nCBOzBmkgbE3mt7wM0kmNtwMglKjlAIyUqOWKDYwMLej8wqCghBpzLMarQatBHuD7xzkibKYnjTEkLSmIAJS0YmYGRTyeE7FvoBF+c4COnw+I1iiVLMJ1aYjBCMwGCAonBDyRO952wNa1G4oTMWcUSJ/DgVU2cwOG6lVgbR2TkgwWCppPFgOyfMmYy51RAjRUuEIP6KoVgoKcKriqGAfcqQbqbDIFF2XD5SBS/iMFCRC5rRmIkhLaqEq6oEBCifVh0pOkIz0VBc9Eg7KnR6vETZ1VV3Uuq6DmbKFWwQWup3FtKVpKLoE3Gg+H3JW3/vQB/hR4bKx0u28JOgNbJ3MnCSXSCTnB5/ujwmfcYdD3WkaIncveaz1bJqPeZPukPOHVRmkhp9lOOs+VZF1ZdxJ7Tea8ajRMaU365q7C+2BvFseyd/RPqoZotzUH2Dk0vJw4ndC39Q4305B31Jg1UfO+6OLU+XAy4Mz+mOEtZtHxg8j2WDUX9HFiUNcSQyt5JkGajQepuN/GJvWUyHOLNkOfCd7q29/vV/bP6AnqtnSc=:1409
^PQ1,0,1,Y
^XZ

View File

@ -21,12 +21,12 @@
^PW472
^LL1417
^LS0
^FT101,1407^A0B,29,28^FH\^CI28^FDPart Name: {labeltxt_1}^FS^CI27
^FT171,1407^A0B,29,28^FH\^CI28^FDPart Number: {PART}^FS^CI27
^FT239,1407^A0B,29,28^FH\^CI28^FDDUNS Number: {labeltxt_2}^FS^CI27
^FT319,1407^A0B,29,28^FH\^CI28^FDSerial Nunmber: {PART}{SN4}{MO}{YY}^FS^CI27
^FT397,1407^A0B,29,28^FH\^CI28^FDManufacuring date:{DD}.{MO}.{YY} {HH}:{MI}(Julian)^FS^CI27
^FT365,360^BXB,10,200,0,0,1,_,1
^FT101,1450^A0B,29,28^FH\^CI28^FDPart Name: {labeltxt_1}^FS^CI27
^FT172,1450^A0B,29,28^FH\^CI28^FDPart Number: {PART}^FS^CI27
^FT248,1450^A0B,29,28^FH\^CI28^FDDUNS Number: {labeltxt_2}^FS^CI27
^FT335,1450^A0B,29,28^FH\^CI28^FDSerial Nunmber: {PART}{SN4}{MO}{YY}^FS^CI27
^FT413,1450^A0B,29,28^FH\^CI28^FDManufacuring date:{DD}.{MO}.{YY} {HH}:{MI}(Julian)^FS^CI27
^FT429,370^BXB,10,200,0,0,1,_,1
^FH\^FD{BCODE}^FS
^FO49,91^GFA,725,2484,9,:Z64:eJy9lj1Ow0AQhcc2KBFNjmB6Co5gCiROQIm4BL1XokFwiZRWKDhCLFFwDFxGUOCOCIUd5teBGBEpRBlb9tOnZHfe7OwmybNGnaFGk5jYkKQTjTFsO7JoIok7JHh+wdfJtuqTxcnkliLs1MUVbBKnO8xwSW4kwn/r/Evld+nCBOzBmkgbE3mt7wM0kmNtwMglKjlAIyUqOWKDYwMLej8wqCghBpzLMarQatBHuD7xzkibKYnjTEkLSmIAJS0YmYGRTyeE7FvoBF+c4COnw+I1iiVLMJ1aYjBCMwGCAonBDyRO952wNa1G4oTMWcUSJ/DgVU2cwOG6lVgbR2TkgwWCppPFgOyfMmYy51RAjRUuEIP6KoVgoKcKriqGAfcqQbqbDIFF2XD5SBS/iMFCRC5rRmIkhLaqEq6oEBCifVh0pOkIz0VBc9Eg7KnR6vETZ1VV3Uuq6DmbKFWwQWup3FtKVpKLoE3Gg+H3JW3/vQB/hR4bKx0u28JOgNbJ3MnCSXSCTnB5/ujwmfcYdD3WkaIncveaz1bJqPeZPukPOHVRmkhp9lOOs+VZF1ZdxJ7Tea8ajRMaU365q7C+2BvFseyd/RPqoZotzUH2Dk0vJw4ndC39Q4305B31Jg1UfO+6OLU+XAy4Mz+mOEtZtHxg8j2WDUX9HFiUNcSQyt5JkGajQepuN/GJvWUyHOLNkOfCd7q29/vV/bP6AnqtnSc=:1409
^PQ1,0,1,Y

View File

@ -985,6 +985,14 @@ class Test(Widget):
label_brother = context.get("RECIPE_TO_PRINT", "-") + context.get("DD","-") + context.get("MO","-") + context.get("YY","-") + context.get("SN5","-")
barcode = str(label_brother)
# Ensure any labeltxt_N fields from the recipe are available in context (both lower and upper case)
for n in range(5):
field = f"labeltxt_{n + 1}"
if field in printer_fields.keys() and printer_fields[field] != "":
value = printer_fields[field]
context[field] = value # e.g., 'labeltxt_1'
context[field.upper()] = value # e.g., 'LABELTXT_1'
# Process any {M43:X:Y} patterns in the barcode format
processed_barcode_format = self.process_m43_patterns(self.barcode_format, context)
formatted_barcode = processed_barcode_format.format(**context)
@ -993,13 +1001,6 @@ class Test(Widget):
if self.archived is not None:
self.archived.barcode = self.printed_barcode
for n in range(5):
field = f"labeltxt_{n + 1}"
if field in printer_fields.keys():
if printer_fields[field] != "":
context[field.upper()] = printer_fields[field]
# PRINT MAIN PRODUCT LABEL
# Determine which OS label printer to use based on per-recipe selection
selected_printer = printer_fields.get("printer_selection", "")