[Gelöst] Barcode 128 Problem

6. Februar 2012 17:41

Hallo zusammen,

ich habe ein kurriosen Barcodeproblem, bei dem ich leider nicht weiterkomme.

Eingesetzt wird die Schriftart "Code128bwin" mit dem Sourcecode aus Mibuso
Code:
StartChar:='š';
StopChar:='œ';
Checksum:=104;

FOR i:=1 TO STRLEN(pText) DO BEGIN
  currentchar:=pText[i];
  Checksum := Checksum +(i*(currentchar-32));
END;
ChecksumChar:= Checksum MOD 103;
ChecksumChar:= ChecksumChar+32;

pText:=CONVERTSTR(pText,' ','€');

RetVal:=STRSUBSTNO('%1%2%3%4',StartChar,pText,ChecksumChar,StopChar);
EXIT(RetVal);


Folgender Report soll Variantennummern in der gewünschten Barcodeschriftart drucken.
Oft klappt dies auch, hin und wieder werden jedoch nicht druckbare Zeichen erzeugt.
Hier ein Beispiel:

http://up.picr.de/9469037bae.jpg

Oben steht die Variantennummer im Klartext, darunter der erzeugte Barcodestring von der Mibuso Lösung.
Links als Code128bwin, daneben nochmal als Klartext.

Kennt jemand eine Lösung für dieses Problem? Es sind doch keinerlei "problematische" Zeichen, wie Umlaute enthalten

Viele Grüße,

Oliver
Zuletzt geändert von Servona74 am 7. Februar 2012 12:05, insgesamt 1-mal geändert.

Re: Barcode 128 Problem

6. Februar 2012 18:24

Hast du die den schon mal angesehen?

Gruß, Fiddi

Re: Barcode 128 Problem

6. Februar 2012 18:46

Hallo,

habe gerade auf Mibuso folgenden Eintrag gefunden

"The original Navision code

ChecksumChar:= ChecksumChar+32;

Should be replaced with

CASE ChecksumChar OF
0: ChecksumChar := 176;//B0h
1..94: ChecksumChar :=ChecksumChar+32;
95..101: ChecksumChar := ChecksumChar+105;
102: ChecksumChar := 213; //D5h
END;"

Mit dieser Modifikation scheint es zu funktionieren.
Hatte ich vorher wohl überlesen :-(

Viele Grüße und trotzdem vielen Dank,

Oliver