Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fastreport und Barcode (https://www.delphipraxis.net/81019-fastreport-und-barcode.html)

Wilsandy 19. Nov 2006 10:12


Fastreport und Barcode
 
Hallo,
ich benutze Fastreport 3.19 mit Delphi5.
In einem Lieferschein drucke ich den Barcode 2,5 Interleaved.
Nun muss ich in diesen Barcode eine Prüfziffer einbauen.
In dem Properties für den Barcode habe ich CalChecksum auf true gesetzt.
Beim Ausdruck bzw. auch auf dem Bildscheim zeigt er keine veränderung bzgl. der Prüfziffer an.
Die Barcodelänge ist 9, also eine ungerade Zahl um die Prüfziffer hinten dranzustellen.
Muss man zu dem CalCheckSum(true) noch zusätzlich was angeben um die Prüffziffer zu sehen ?.
Würde mich über Hilfe freuen, da ich schon länge Zeit das Problem nicht alleine gelöst bekomme.
Gruß Sandra

Wilsandy 19. Nov 2006 23:04

Re: Fastreport und Barcode
 
Hallo !!
Hat denn keiner von Euch schon mal was in Fastreport mit Barcode 2,5 Interleaved und Prüfziffer gemacht ?.
Liebe Grüße Sandra

Union 20. Nov 2006 09:05

Re: Fastreport und Barcode
 
Hallo Sandra,

der 2/5 interleaved unterstützt keine automatischen Prüfziffern. Diser Schalter hat nur Auswirkungen bei Barcodes, die dies unterstützen (z.B. EAN13).
Diese Barcodes unterstützen eine automatische Prüfziffer optional:
  • Codabar
  • Code93
  • Code128
Diese Barcodes müssen immer eine Prüfziffer haben:
  • Alle Ean (Ean 8, Ean 13, UPC, JAN, ISBN, ISSN, ISMN)
  • PDF417
  • ITF
  • OPC
  • PZN
Du solltest Dir daher ein eigenes Prüfziffernverfahren ausdenken. Und einen unbeantworteten Beitrag "Pushst" Du bitte erst nach mindestens 24 Stunden.

Wilsandy 20. Nov 2006 21:15

Re: Fastreport und Barcode
 
Hallo,
Ich danke Dir für Deine Antwort.
Dann werde ich mich wohl für eine anderen Barcode entscheiden.
Schönen Abend noch und Gruß Sandra

Union 20. Nov 2006 21:19

Re: Fastreport und Barcode
 
Wieso? Du kannst doch eine Prüfsummenlogik schreiben. Bei 2/5 wird normalerweise jede ungerade Ziffer mit 3 multipliziert und addiert. Dann wird das Ergebnis durch 10 geteilt. Der Rest stellt die Prüfziffer dar.

z.B.: 01234 => 0*3 + 2*3 + 4*3 = 18 / 10 = 1 Rest 8. Barcode mit Prüfziffer = 012348.

Wilsandy 20. Nov 2006 22:57

Re: Fastreport und Barcode
 
na klar, ist ja logisch das ich den selber errechnen kann.
Ich werde das morgen mal in meinem Lieferscheinprogramm einbauen (und dann in dem Scanner)
Ist schon prima diese Forum.
Danke Dir noch mal.
Gruß Sandra

Hansa 20. Nov 2006 23:44

Re: Fastreport und Barcode
 
Zitat:

Zitat von Wilsandy
...In einem Lieferschein drucke ich den Barcode 2,5 Interleaved. Nun muss ich in diesen Barcode eine Prüfziffer einbauen...

Sandra, jetzt mal langsam. Union ist viel zu schnell. :mrgreen: Warum heißt eine Prüfziffer wohl Prüfziffer ? Beispiel EAN13 : die ersten 6 Stellen werden abwechselnd mit 1 und 2 (oder 3 :gruebel: ) multipliziert und aufaddiert. Die nächsten 6 Stellen weiß ich jetzt auch nicht auswendig. Auf jeden Fall wird im Prinzip eine Quersumme gebildet. Die letzte Stelle dieser Prüfziffer ergibt die 13. Stelle des EANs.

Bei einem eigenen Strichcode wird der Drucker kaum mitspielen. Man könnte die Grafik zwar selber programmieren, aber das gibt richtig viel Arbeit. Dann macht aber wohl der Scanner noch Schwierigkeiten.

Konsequenz ist tatsächlich das :
Zitat:

Zitat von Wilsandy
Dann werde ich mich wohl für eine anderen Barcode entscheiden.

Hinzuzufügen wäre noch das Wort "müssen". :zwinker: Welchen Sinn hat überhaupt die Lieferschein Prüfziffer bei Dir ? Für eigene codierte strings bietet sich der Code39 an. Dürfte jeder entsprechende Drucker und Scanner können.

alzaimar 21. Nov 2006 07:01

Re: Fastreport und Barcode
 
Weiterhin sollte bei der Auswahl des richtigen Barcodes einerseits die zur Verfügung stehende (bedruckbare) Fläche und der Umfang der zu kodierenden Zeichen als auch die Lesesicherheit berücksichtigt werden.

Interleaved 2 Of 5 ist der älteste Barcode und hat Probleme beim Lesen: Die Wahrscheinlichkeit, das der Scanner sich verliest, ist relativ hoch. Du kannst den Scanner schräg halten und trotzdem wird eine Lesung durchgeführt. Hier muss dann die Software durch Checksummen und Prüfung der korrekten Länge eingreifen. Der physikalische Vorgang des Lesens (Scanner piept und eine LED wird grün) ist ja erfolgreich. trotzdem wird der gelesene Code nicht übernommen: Der Anwender ist sehr schnell frustriert, Eingabefehler sind die Folge.

Meiner Erfahrung nach ist Code39 oder Code128 hier besser geeignet. Hier führt ggf. der Scanner selbst den Prüfsummenvergleich durch. Wenn der Scanber also eine erfolgreiche Lesung signalisiert, kann man sicher sein, das der Barcode korrekt gelesen wurde.

Soweit ich weiss, ist für Code39 keine Lizenz erforderlich, es gibt sogar frei verfügbare Fonts im Internet, obwohl der Barcode-Generator von FastReport hier gute Arbeit leistet.

Abschließend könntest Du dir noch 2D-Barcodes anschauen.

@Hansa: Ich verstehe den Einwand mit dem Drucker nicht. Ich kann doch an meinen Barcode ranhängen, was ich will. Was hat das mit dem Drucker zu tun? Egal, wichtig ist ja die Wahl des richtigen Barcodes.

Union 21. Nov 2006 08:57

Re: Fastreport und Barcode
 
Hier geht es nicht um die Auswahl der Software, mit der ein Barcode erstellt wird, sondern nur um die Errechnung der Prüfziffer. Sandy verwendet Fastreport und dieses hat Barcode Komponenten bereits eingebaut (nämlich die von PSoft).

Klar gibt es bessere Barcodes als den 2/5 - aber auch das liegt ausserhalb meines Ermessens. Wenn in einem Projekt ein bestimmter Barcode eingesetzt werden soll, dann gehe ich davon aus, dass dem eine entsprechende Planung vorausgegangen ist. Stell Dir vor, Du müsstest Flugsccheine drucken und entscheidest, jetzt mal einfach einen anderen als den IATA 2/5 Code zu verwenden...

alzaimar 21. Nov 2006 11:58

Re: Fastreport und Barcode
 
Union, dem Scanner ist es doch egal, welcher Barcode verwendet wird. Meiner Erfahrung nach wird Interleaved 2 of 5 genommen, weil er 'einfach so da ist'. Mein Hinweis auf Fonts für Code39 sollte nur zeigen, das es nichts Mystisches mit den Barcodes auf sich hat. Viele glauben auch, das die Dekodierung durch komplizierte Software im PC erfolgt. Da ist ein Hinweis auf einen Font schon hilfreich und zeigt Alternativen, um irgendwelche Geschichten auch mit Word/EXCEL/OpenOffice etc. zu drucken.

Wilsandy soll einen Barcode *erweitern*. Wenn ich schon die Anzahl der Stellen verändere, kann ich vielleicht doch gleich einen Barcode verwenden, oder? Und exotisch sind die Code39/128 auch nicht, die Scanner kann man umkonfigurieren und fertig. Der Vergleich mit IATA ist gut, trifft aber imho hier nicht zu.

Aber das wird/muss/kann/soll Wilsandy selbst entscheiden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:44 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz