Datamatrix

Moderator: Moderatoren

Datamatrix

Beitragvon Armin » Do, 13. Okt 2016 17:48

Hallo,

ich will mit List und Label einen Datamatrix-Code drucken.

Separators (ISO 15434 & ASC MH 10 Standards)

[)> Start of transmission with
<RS> Record Separator
06 ASC MH 10 Data Identifiers
<GS> Group Separator
<EOT> End Of Transmission

Den String bereite ich so auf:

Code: Alles auswählen
    cHilf := "[)>"+ "~d030"+"06"+"~d029"+;
             "P"  + trim(field->LATENK) + "~d029"+;
             "1T" + trim(field->XXFAUN) + "~d029"+;
             "14D"+ field->XXMHDT + "~d029"+;
             "Q"  + trim(field->XXVPEI) + "~d030"+;
              "~d004"


D.h. für <RS> verwende ich chr(30), für <GS> chr(29) und für <EOT> chr(4)

So erzeuge ich die LL-Variable:
LlDefineVariableExt(hJob, cFeldname, Trim(cHilf), LL_BARCODE_DATAMATRIX, 0 )

Der Code wird mit einer Barcode-App auf dem Handy als Format DATAMATRIX und Typ TEXT angezegit.
Folgendes Ergebnis:
[)> 06 PA2U00095689 1TF160099901 14D20211110 Q20000

Jetzt behauptet der Kunde, dass die Steuerzeichen fehlen.

bzw. sind die Codes richtig?
<RS> entspricht chr(30)
<GS> entspricht chr(29)
<EOT> entspricht chr(4)

Hier wird das etwas erklärt:
http://www.idautomation.com/barcode-faq/iso-iec-15434/

Grüße, Armin
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand

Re: Datamatrix

Beitragvon Armin » Di, 18. Okt 2016 10:08

Hilfe,

der Kunde hat uns jetzt einen Datamtrix zugesendet, wie er ihn gerne haben will.

Wenn ich den scanne, dann sind da die Steuerzeichen drin und werden folgendermaßen angezeigt:

[)><RS>06<GS>PA2U00095689<GS>1TF160099901<GS>14D20211110<GS>Q20000<RS><EOT>

Wie bringe ich List und Label dazu, diese Steuerzeichen in den Datamatrix einzufügen?

Grüße, Armin
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand

Re: Datamatrix

Beitragvon Armin » Di, 18. Okt 2016 10:10

Der richtige Datamatrix Barcode im Anhang
Dateianhänge
image002.png
image002.png (7.79 KiB) 3120-mal betrachtet
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand

Re: Datamatrix

Beitragvon brandelh » Di, 18. Okt 2016 10:24

Mein Smartphone gibt für den Barcode einen anderen Code zurück, war das nur ein Beispiel oder spinnt der reader bei mir ?
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13498
Registriert: Mo, 23. Jan 2006 21:54
Wohnort: Germersheim

Re: Datamatrix

Beitragvon brandelh » Di, 18. Okt 2016 10:32

Hast du mal versucht statt "~d029" einfach chr(29) etc. zu verwenden ?
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13498
Registriert: Mo, 23. Jan 2006 21:54
Wohnort: Germersheim

Re: Datamatrix

Beitragvon Armin » Do, 20. Okt 2016 11:36

Hallo Hubert,

vielen Dank für Deine Antworten!

Hast du mal versucht statt "~d029" einfach chr(29) etc. zu verwenden ?


ja, da kommt das gleiche dabei raus.

Das ist nur ein Beispiel vom Kunde - ich wollte zeigen, dass beim Scannen die Steuerzeichen als z.B. "<RS>" gezeigt werden.
In meinem Beispiel werden an diesen Stellen Leerzeichen gezeigt. Combit hat meinen String jetzt auch mal verwendet und sie sehen die entsprechenden Zeichen nach dem Scannen als Hex-Werte drin. Trotzdem scheint der Datamatrix nicht i.O..

Man sieht auch den Unterschied - der richtige vom Kunde scheint in 4 Bereiche aufgeteilt zu sein.

Grüße, Armin
Dateianhänge
datamatrix_test1.png
von mir aus List und Label
datamatrix_test1.png (6.91 KiB) 3079-mal betrachtet
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand

Re: Datamatrix

Beitragvon Armin » Mo, 24. Okt 2016 10:06

Hallo zusammen,

jetzt klappt es - dank Combit-Support.

Die Lösung:

Den String an List und Label so uebergeben:
"[)><RS>06<GS>PA2U00095689<GS>1TF160099901<GS>14D20211110<GS>Q20000<RS><EOT>"


D.h. die Steuercodes
<RS> entspricht chr(30)
<GS> entspricht chr(29)
<EOT> entspricht chr(4)

werden nicht als Steuerzeichen (z.B. "~d029") uebergeben (waere laut Doku zu erwarten) sondern als entsprechenden Text "<RS>" usw..
List und Label scheint dann den Text in die Steuerzeichen umzuwandeln... :roll:

Grüße, Armin
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand

Re: Datamatrix

Beitragvon brandelh » Mo, 24. Okt 2016 10:21

Das macht aber auch Sinn, "<...>" wird als Text über alle Schnittstellen sauber übergeben, Steuerzeichen eventuell "gefressen" oder interpretiert.
Einfacher ist es auch :D

PS: manchmal denkt man zu kompliziert ... geht mir auch so :roll:
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13498
Registriert: Mo, 23. Jan 2006 21:54
Wohnort: Germersheim

Re: Datamatrix [ERLEDIGT]

Beitragvon Armin » Mo, 24. Okt 2016 11:13

Hallo Hubert,

vielen Dank für Dein Mitdenken! :D

PS: manchmal denkt man zu kompliziert ... geht mir auch so


ja - kann passieren - die Dokumentation dazu ist aber auch sehr widersprüchlich bis überhaupt nicht vorhanden (List und Label).
Ich wollte es halt gleich richtig machen und nicht rumprobieren...

Gut - klappt ja jetzt,

Grüße, Armin
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 361
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand


Zurück zu List & Label

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast