Imprimer des codes barres avec 4D v11 SQL et SVG



Documents pareils
Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Logiciel (Système d impression directe)

Optimisation de 4D Server et 4D Web Server. Résumé. 4D Notes techniques

Barres Manuel d utilisation. Manuel d utilisation. version I.2.0. Copyright Antilog 1998/2002 Tous droits réservés. JT.Gueux@log-1.

4e Dimension Clés XML Backup. Windows /Mac OS 4e Dimension D SA. Tous droits réservés.

Manuel Utilisateur Version 1.6 Décembre 2001

Guide d implémentation des ISBN à 13 chiffres

Comment mettre en page votre livre

AssetCenter Notes de version

PrintShop Mail Logiciel de mailing professionnel pour Macintosh et Windows

Fonctions pour la France

Manuel d utilisation. Logiciel (Device Monitor) Pour les systèmes d imagerie numérique. Configuration requise Description générale

Fonctions pour la Suisse

Instructions préliminaires P2WW FR Préface

Guide d installation de Windows Vista /Windows 7

Logiciel de création de badges personnalisés.

Guide de prise en main Symantec Protection Center 2.1

01V96i Editor Manuel d'installation

Purkinje Dossier Configuration requise. Version 5.11

Logiciel Enterprise Guide Version 1.3 Windows

Traitement numérique de l'image. Raphaël Isdant

P2WW FRZ0. Utilisation de ScandAll PRO

Sophos Mobile Encryption pour Android Aide. Version du produit : 1.3

Guide Google Cloud Print

Créer un fichier PDF/A DÉPÔT ÉLECTRONIQUE

Version 3.0 Mai P Xerox Mobile Print Cloud Guide d utilisation et de dépannage pour l utilisateur

FileMaker Server 13. Guide de configuration de l'installation réseau

VERITAS Backup Exec TM 10.0 for Windows Servers

CALAMEO. Publier et partager vos documents sur la toile

Mise à jour, sauvegarde et restauration de logiciels

Plusieurs utilisateurs peuvent maintenant imprimer des étiquettes grâce à la connexion Wifi de la QL-710W

Sophos Mobile Encryption pour Android Aide. Version du produit : 1.0

INDICATIONS POUR LA CONVERSION DE DOCUMENTS AU FORMAT PDF

Guide de démarrage rapide

Service d information pour remise de paiement de factures Scotia

ORACLE TUNING PACK 11G

Sage CRM. 7.2 Guide de Portail Client

Guide d utilisation. DYMO Label TM. v.8

NiceLabel Guide de prise en main rapide

TP SIN Traitement d image

Utilisation de l ordinateur portable Bluetooth avec le hub Logitech sans fil

Manuel d'utilisation Logiciel (Network TWAIN Driver)

Manuel d utilisation Logiciel (Communications Utility)

Gérer, stocker et partager vos photos grâce à Picasa. Janvier 2015

EFT. Guide de mise en route

ecafé TM CENTER

Juin XMS PC Connect Guide de l utilisateur

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

Phaser 7100 de Xerox Imprimante couleur

Voici quelques-unes des questions auxquelles répond cette présentation.

La Clé informatique. Formation Excel XP Aide-mémoire

Tarif Public. Sage BOB 50 PME Mode Licence

Comment générer un fichier PDF de qualité et certifié imprimable?

Guide Numériser vers FTP

Notes de mise à jour. 4D v11 SQL Release 3 (11.3) Notes de mise à jour

Database Manager Guide de l utilisateur DMAN-FR-01/01/12

INFO 2 : Traitement des images

LECTURE DES FICHIERS DE FACTURES

Printer Administration Utility 4.2

Notes de mise à jour. 4D v11 SQL Release 2 (11.2) Notes de mise à jour

Messages d'erreurs. Redémarrez votre PC en cliquant sur Démarrer, en sélectionnant ensuite Arrêter puis en cochant Redémarrer

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne

Tutoriel Adobe Acrobat Pro (version 9.0.0) Créer les fichiers PDF de la thèse. Service Commun de la Documentation Service des thèses

Guide de configuration de SQL Server pour BusinessObjects Planning

Manuel d'impression réseau

BADPLUS V5 MANUEL D'UTILISATION. Imports de données joueurs à partir de la base fédérale en ligne Poona. Stéphan KIEFFER - Dominique BOSSERT

Eole - gestion des dictionnaires personnalisés

CAHIER DES CHARGES ETIQUETTES MP06-EU (FORMAT ODETTE)

Notes de mise à jour Fiery Print Controller AR-PE3, version 1.01 pour AR-C330

StorageTek Tape Analytics

Retrospect 7.7 Addendum au Guide d'utilisation

Guide de l'utilisateur

FileMaker Pro 12. Guide de configuration de l installation réseau

Usage des photos pour Internet et pour la presse

Guide de l'utilisateur de l'application mobile

OSIRIS/ Valorisation des données PORTAIL BO MANUEL UTILISATEUR

Nokia Internet Modem Guide de l utilisateur

Guide de Démarrage Rapide

Dans la série. présentés par le site FRAMASOFT

Symantec Backup Exec 12.5 for Windows Servers. Guide d'installation rapide

Sage 300 ERP Guide de l'utilisateur de Services bancaires. Mai 2014

Importation de fichiers Eagle

HP Color LaserJet Pro MFP M476dn

Guide du Pilote d Imprimante Universel

Services bancaires par Internet aux entreprises. Guide pratique pour : Rapports de solde Version

Spécifications de l'offre Surveillance d'infrastructure à distance

Créer un premier document avec Pages

» Données techniques »TRANSFERT THERMIQUE. Compa II 104/8 Impression. Vitesse max. d'imression. Largeur d'impression. Largeur de passage

Import PDF. Manuel d'utilisation

Débuter avec OOo Base

Procédures d'utilisation de Maitre'D

Configuration requise Across v6 (Date de mise à jour : 3 novembre 2014)

KMnet Admin LOGICIEL COMPLET ET PERFORMANT D'ADMINISTRATION DES PÉRIPHÉRIQUES.

Cyber-base du Pays Martégal. Atelier «Découverte de l ordinateur»

Transcription:

Imprimer des codes barres avec 4D v11 SQL et SVG Par Thomas MAUL, 4D Germany Note technique 4D-200806-12-FR Version 1 - Date 1 juin 2008 Résumé Traduction par Stéphanie Tirtiat (4D S.A.S., Support Technique International). Les codes à barres sont largement utilisés pour l'identification automatique des produits, des suivis de colis, etc... Cette note technique décrit un composant 4D, dont le code source est fourni, qui permet d'imprimer un ensemble de différents codes-barres à l'aide d'une seule commande. Parce qu'il était sorti en 4D 2004 avec utilisation du 4D Chart, nous fournissons également le composant en version 4D 2004. 4D Notes techniques Copyright 1985-2009 4D SAS - Tous droits réservés Tous les efforts ont été faits pour que le contenu de cette note technique présente le maximum de fiabilité possible. Néanmoins, les différents éléments composant cette note technique, et le cas échéant, le code, sont fournis sans garantie d'aucune sorte. L'auteur et 4D S.A. déclinent donc toute responsabilité quant à l'utilisation qui pourrait être faite de ces éléments, tant à l'égard de leurs utilisateurs que des tiers. Les informations contenues dans ce document peuvent faire l'objet de modifications sans préavis et ne sauraient en aucune manière engager 4D SA. La fourniture du logiciel décrit dans ce document est régie par un octroi de licence dont les termes sont précisés par ailleurs dans la licence électronique figurant sur le support du Logiciel et de la Documentation afférente. Le logiciel et sa documentation ne peuvent être utilisés, copiés ou reproduits sur quelque support que ce soit et de quelque manière que ce soit, que conformément aux termes de cette licence. Aucune partie de ce document ne peut être reproduite ou recopiée de quelque manière que ce soit, électronique ou mécanique, y compris par photocopie, enregistrement, archivage ou tout autre procédé de stockage, de traitement et de récupération d'informations, pour d'autres buts que l'usage personnel de l'acheteur, et ce exclusivement aux conditions contractuelles, sans la permission explicite de 4D SA. 4D, 4D Calc, 4D Draw, 4D Write, 4D Insider, 4ème Dimension, 4D Server, 4D Compiler ainsi que les logos 4e Dimension, sont des marques enregistrées de 4D SA. Windows,Windows NT,Win 32s et Microsoft sont des marques enregistrées de Microsoft Corporation. Apple, Macintosh, Power Macintosh, LaserWriter, ImageWriter, QuickTime sont des marques enregistrées ou des noms commerciaux de Apple Computer,Inc. Mac2Win Software Copyright 1990-2002 est un produit de Altura Software,Inc. 4D Write contient des éléments de "MacLink Plus file translation", un produit de DataViz, Inc,55 Corporate drive,trumbull,ct,usa. XTND Copyright 1992-2002 4D SA. Tous droits réservés. XTND Technology Copyright 1989-2002 Claris Corporation.. Tous droits réservés ACROBAT Copyright 1987-2002, Secret Commercial Adobe Systems Inc.Tous droits réservés. ACROBAT est une marque enregistrée d'adobe Systems Inc. Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs. 1 / 14

Imprimer des codes à barres Résumé Les codes-barres sont largement utilisés pour l'identification automatique des produits, des suivis de colis, etc... Cette note technique décrit un composant 4D, dont le code source est fourni, qui permet d'imprimer différents codes à barres à l'aide d'une seule commande. Il n'y a pas besoin de comprendre comment fonctionne le concept. Pour obtenir des informations élémentaires sur le fonctionnement des barres à codes et sur leur création, veuillez vous référer à la note technique 200109-29-CodeBarre, qui est fournit au format pdf avec les bases exemples. Le composant supporte le calcul du checksum (chiffre de contrôle) et la conversion UPC-A vers UPC-E. La note technique est divisée en deux grandes parties : les types de codes à barres et l'utilisation du composant. Le composant Bar code Du fait que le composant présenté dans cette note technique traite du calcul de format (noir et blanc) et de la production de codes à barres, il est possible de le modifier pour d'autres types de codes à barres. Cette note technique est fournie avec une base exemple utilisée comme composant, et le code source de ce composant. Le composant rend l'utilisation des codes à barres très facile. Il y a seulement deux méthodes visibles. Dans la plupart des cas, une seule méthode suffit aux besoins d'un développeur. Le code source est tout de même fourni au cas où un développeur voudrait examiner comment il fonctionne et le modifier si nécessaire. NDT : Le composant existe en deux versions : version 4D 2004 (créé avec 4D Insider 2004.1) et en 4D v11 SQL. Version 4D 2004 Il est utilisable uniquement avec une version 4D 2004.1 ou ultérieure. Pour les versions plus anciennes, le code source peut être utilisé pour installer le composant directement ou pour créer un composant avec une version de 4D Insider plus ancienne. Ce composant utilise 4D Chart. Version 4Dv11 SQL Le composant qui crée les codes à barres utilise maintenant les fonctionnalités SVG de 4D v11 SQL pour remplacer 4D Chart. Le résultat est beaucoup plus rapide en création et de qualité meilleure. Un bug est également fixé. Exemple et composant 4D V11 SQL 2 / 14

Le code source du composant (la base matrice) est fourni dans le dossier "Matrix Database". Un composant compilé se trouve dans le dossier "Component_Database". Le composant ("Barcode.4dbase") peut être copié dans le dossier "Components" de toute base de données 4D v11 SQL. Le composant est déjà installé dans la base exemple ("BarCodeExample.4dbase"), dans le sous-dossier "Components" du package de la base. Le composant est compilé en mode de compatibilité, pour améliorer la compatibilité avec les autres applications converties. Si votre base de données 4D v11 SQL tourne déjà en mode Unicode, veuillez changer le paramètre dans les préférences de la base matrice en code source et la recompiler. Bug corrigé Note : Le composant v11 corrige un bug du composant version 4D 2004 pour le Code 128 (concernant le caractère minuscule g). 4D v11 SQL et 4D 2004 : liste des Codes à barres supportés Les codes à barres supportés par les deux versions sont identiques : Industrial 2 of 5 Interleaved 2 of 5 Code 39 Code 128 (A, B, C) EAN 8 et EAN13 UPC-A et UPC-E 2 et 5 chiffres supplémentaires pour EAN et UPC Industrial 2 of 5 Caractères supportés : seulement les chiffres de 0 à 9 Nombre maximum de caractères : - Check sum : optionnel Compression : faible Interleaved 2 of 5 Caractères supportés : nombre pair de chiffres de 0 à 9. Nombre maximum de caractères : - le compte doit être égal 3 / 14

Check sum : optionnel Compression : moyen Utilisé par : USPS Special Services (US Mail), SCC-14 - EAN-14 (suivi de colis / feuilles d'acheminement) Particularité : les paires de chiffres sont intercalées, d'abord les barres noires, puis les barres blanches, afin de réduire la longueur du codes à barres Code 39 Caractères supportés : 0-9, A-Z, "-. $/+%" (note : A-Z n'inclut pas les caractères diacritiques comme les umlauts allemands). Nombre maximum de caractères : 30 Check sum : optionnel Compression : moyen Utilisé par : LOGMARS (standard du département de la Défense des Etats-Unis), les boîtes des produits 4D Code 128 Le type Code 128 a trois sous-types : 128A, 128B et 128C. - 128A supporte les caractères de contrôle (caractères 0 à 31). - 128B supporte les lettres minuscules. - 128C support uniquement les chiffres. Le code 128 permet le changement de sous-type au milieu du code. Par exemple, on peut commencer par le 128B et continuer avec le 128C pour être plus efficace concernant les chiffres. Le changement de type n'est pas supporté dans le composant. Nombre maximum de caractères : - Check sum : requis (mais peut ne pas être imprimé) Compression : moyen Utilisé par : USPS Special Services (US Mail), SSCC18 - EAN128 -UCC128 (suivi colis / feuilles d'acheminement) Code 128A Caractères supportés : 0-9; A-Z;!\"#$0% & '()*+0-./: ;<=>?@[\\]^_"+" caractères de contrôle (00-31) Note : A-Z n'inclut pas les caractères diacritiques comme les umlauts. 4 / 14

Dans l'exemple de code ci-dessus : "4DDE700TEST" est le code, ">" est le checksum calculé. Code 128B Caractères supportés : 0-9; A-Z;a-z;!\"#$0% & '()*+0-./: ;<=>?@[\\]^_{}~` Note : A-Z ou a-z n'inclut pas les caractères diacritiques comme les umlauts. Dans l'exemple de code ci-dessus : "4DDE700Test" est le code, "`" est le checksum calculé. Code 128C Caractères supportés : nombre pair de chiffres de 0 à 9. Dans l'exemple de code ci-dessus : "0123456789" est le code, "73" est le checksum calculé. EAN 8, EAN 13, UPC-A, UPC-E, ISBN, ISSN Caractères supportés : 0-9 Nombre maximum de caractères : 7-13 Check sum : requis, impression requise Compression : haute Utilisé par : UPC, EAN, ISBN, ISSN, Bookland, produits de consommation à travers le monde Ce code à barres est familier. Il est utilisé dans les supermarchés, dans les librairies et dans les caisses enregistreuses du monde entier. C'est le code à barres le plus complexe à lire et à imprimer. Le type UPC (Universal Product Code - Code Universel des Produits en Français) a été introduit le 3 avril 1973 aux USA et au Canada et n'est utilisé que dans ces deux pays. Les numéros de code sont strictement limités et sont contrôlés par l'ucc (Uniform Code Council). Le code est constitué d'un code de fabrique et d'un numéro de produit pour assurer l'unicité dans le monde entier de ce code. 5 / 14

Le type UPC-A est composé de 12 chiffre (11 + le checksum). Le type UPC-E est un code compressé avec seulement 7 chiffres (+ le checksum) et est utilisé pour les petits articles qui ont peu de place disponible). Seuls quelques codes peuvent être convertis en UPC-E ; ces séries de codes sont assignées spécialement par l'ucc. Le composant supporte la conversion du type UPC-A à UPC-E. EAN (European Article Number) est l'alter-ego européen d'upc. Il est d'ailleurs basé sur UPC. EAN comporte généralement 13 chiffres (12 + 1). Donc un de plus que l'upc. Il existe aussi un code réduit (EAN 8 comportant 7 chiffres + 1) pour les petits articles. Il n'y a aucun moyen de calculer (compresser) un EAN 13 en EAN 8. Les codes EAN 8 sont des codes spécifiquement établis. De plus, le calcul du checksum est différent sur l'ean 8. Par le fait que le code EAN est basé sur le code UPC, tous les scanners compatibles EAN peuvent lire l'upc. Ils le traitent comme un code EAN 13 commençant par un zéro. Les deux premiers chiffres de l'ean 13 définissent le pays qui gère une page de numéros. Pour quelques pays plus petits, il existe des sous-plages qui sont définies avec trois premiers caractères comme 539 pour l'irlande. La plage 00-13 est réservée pour les USA et le Canada. Elle contient tous les numéros de la plage UPC-E. Les numéros sont uniques pour le monde entier. Les numéros ne peuvent pas être utilisés simplement, ils doivent être assignés, enregistrés, par l'organisme UCC local (pour les USA : http://www.uc-council.org/, pour l'international : http://www.ean-ucc.org/). Les codes EAN commençant par "2" sont réservés pour les grandes surfaces et les systèmes de numéro interne. Les numéros restant peuvent être utilisés pour coder les produits et les prix au poids. Le code ISBN (International Standard Book Number / numéro international normalisé pour les monographies - code 978), le code ISSN (International Standard Serial Number / numéro international normalisé pour les périodiques - code 977) et le code ISMN (International Standard Music Number / numéro international normalisé pour la musique - code 979) sont tous les trois basés sur le type EAN 13. Pour imprimer un numéro ISBN en codes à barres, il doit être convertit. Ceci peut être fait très simplement. Par exemple, utilisons le numéro ISBN de l'édition allemande du livre "Jumpstart 4D" de Steve hussey. Son code ISBN est : 0-9712895-2-2 Nous ajoutons devant son ISBN le code pays qui est le numéro 978 : EAN : 978 097128952 Remarquez que le dernier chiffre de l'isbn, qui est le checksum, est supprimé. Il sera remplacé par le checksum de l'ean 13. Le composant contient une méthode pour calculer ce checksum. Vous pouvez donc le stocker comme faisant partie du numéro de code article. La méthode calcule aussi automatiquement le checksum pour l'impression s'il le code ne le contient pas. 6 / 14

Les livres et les magazines utilisent souvent un code à barres supplémentaire à deux ou à cinq chiffres. Veuillez consulter la section ci-dessous. EAN aux Etats-Unis : nouveaux règlements à partir du 1er janvier 2005 Alors que tous les scanners EAN étaient capables de lire un code UPC (et les programmes d'impression de codes à barres étaient capables d'imprimer un code UPC-A en ajoutant simplement un zéro comme premier chiffre), les scanners plus anciens sont incapables de gérer les numéros de plus de 12 chiffres. La solution utilisée jusqu'en 2004 était de donner aux sociétés européennes et asiatiques vendant des produits aux USA et au Canada, un préfixe de société à utiliser pour le code à barres UPC. A côté de cela, ces sociétés ont eu besoin d'imprimer deux codes à barres différents (qui se ressemblent beaucoup) sur leurs produits. Il est évident qu'il ne fallait pas attendre longtemps pour que l'organisme UCC soit à court de numéros. La nouvelle solution - début 2005 Au 1er janvier 2005, toutes les applications des points de ventes, utilisées aux USA et au Canada (les scanners et les logiciels), devaient être capables de gérer les codes EAN-8, EAN-13, en plus des codes UPC- E et UPC-A. Les sociétés européennes ne reçoivent plus de préfixes de sociétés américaines et utilisent leur propre code EAN européen sur leurs produits vendus aux USA. Les changements dans les codes UPC aux USA Les sociétés basées aux Etats-Unis reçoivent des préfixes de sociétés qui étaient précédemment "réservés", comme les codes commençant par 1, 8 ou 9. Certains logiciels de point de vente de produits ne stockent que onze chiffres (certains sans checksum, certains avec un zéro comme premier chiffre, UPC-E commençait auparavant toujours par zéro). Il existe même d'autres logiciels de point de vente de produits qui n'ont que dix chiffres (sans checksum et sans zéro en premier chiffre). Global Trade Item Number (GTIN) Depuis le 1er janvier 2005, les logiciels de vente sont supposés utiliser un nombre de 14 chiffres. Les scanners sont sensés fournir automatiquement des nombres de 14 chiffres. Pour ce faire, des zéros sont ajoutés en début de séquence pour atteindre les 14 chiffres (EAN 6 commence par exemple par six zéros). Pour imprimer un nombre GTIN en code à barres, les zéros de début doivent d'abord être supprimés. Les "vrais" chiffres restent inchangés, de cette façon il n'y a pas besoin de donner de nouveaux numéros aux fabricants ou pour l'impression. 7 / 14

Le composant supprime automatiquement les zéros du début de séquence des nombres GTIN. EAN 13 L'EAN 13 est utilisé sur les boîtes de produits en Europe et, depuis 2005, également au Canada et aux USA. Facilement reconnaissable visuellement, le début, le milieu et la fin des barres ont deux fines lignes plus longues. Pour lire de tels codes, il n'est pas nécessaire de les avoir dans une taille différente, on peut reconnaître de manière visible que ce sont des codes EAN. Le nombre de 13 chiffres est divisé de cette manière : un premier chiffre à la gauche du code, puis six chiffres pour chaque moitié. Sur le côté droit du code, il peut y avoir un code supplémentaire de 2 ou 5 chiffres. Le code ci-dessus est un code ISBN pour l'édition américaine du livre "Jumpstart 4D" avec un prix de vente conseillé à 29,99 dollars US. EAN 8 L'EAN 8 est utilisé sur les boîtes de produits en Europe et, depuis 2005, également au Canada et aux USA. Facilement reconnaissable visuellement, le début, le milieu et la fin des barres ont deux fines lignes plus longues. Pour lire de tels codes, il n'est pas nécessaire de les avoir dans une taille différente, on peut reconnaître de manière visible que ce sont des codes EAN. Le nombre de 8 chiffres est divisé de cette manière : une première moitié de chiffres à gauche du code, et les quatre chiffres restant à droite. Sur le côté droit du code, il peut y avoir un code supplémentaire de 2 ou 5 chiffres. UPC-A Ce code est utilisé sur les boîtes de produits uniquement aux USA et au Canada. Facilement reconnaissable visuellement, le début, le milieu et la fin des barres ont deux fines lignes plus longues. Pour lire de tels codes, il n'est pas nécessaire de les avoir dans une taille différente, on peut reconnaître de manière visible que ce sont des codes UPC. Le nombre de 8 chiffres est divisé de cette manière : un premier chiffre à la gauche du code, puis quatre chiffres pour chaque moitié, et le dernier chiffre à la droite du code. 8 / 14

Sur le côté droit du code, il peut y avoir un code supplémentaire de 2 ou 5 chiffres : l'exemple ci-dessus montre le nombre 12. Ce code additionnel ne devrait être utilisé que pour les magazines, journaux et autres périodiques : il présente le numéro de publication. Ceci permet d'avoir un seul code produit pour un magazine et de pouvoir quand même connaître le numéro de publication. UPC-E Ce code est utilisé sur les boîtes de produits uniquement aux USA et au Canada. Facilement reconnaissable visuellement, le début, le milieu et la fin des barres ont deux fines lignes plus longues. Pour lire de tels codes, il n'est pas nécessaire de les avoir dans une taille différente, on peut reconnaître de manière visible que ce sont des codes UPC. Le nombre de 8 chiffres est divisé de cette manière : un premier chiffre à la gauche du code, puis six chiffres au milieu, et le dernier chiffre à la droite du code. Le code contient seulement 8 des 12 chiffres originaux, quatre chiffres ont été supprimés. Le code peut être converti sans perte d'un code de type UPC-E à un code de type UPC-A, et vice-versa ; ce qui veut dire que seule une plage spéciale de nombres peut être utilisée pour créer un UPC-E. Par exemple, le code 0-42100-0052-6 est imprimé en UPC-E comme 0-425261-4. Les sociétés qui ont besoin de codes UPC-E doivent demander un code fabricant spécifique. Il existe des codes fabricants disponibles qui permettent d'encoder 5, 10, 99 ou 999 produits. Sur le côté droit du code, il peut y avoir un code supplémentaire de 2 ou 5 chiffres. Les codes supplémentaires pour l'ean et l'upc Sur le côté droit du code, il peut y avoir un code supplémentaire de 2 ou 5 chiffres. Comme dit plus haut, un nombre de 2 chiffres n'est utilisé que pour les magazines, journaux et autres périodiques, présentant le numéro de publication. Ceci permet d'avoir un seul code produit pour un magazine et de pouvoir quand même connaître le numéro de publication. Le nombre de 5 chiffres est destiné à l'information sur le prix. Aux Etats-Unis, le premier chiffre exprime la monnaie ; "5" indique le dollar américain. Les quatre chiffres suivants désignent le prix lui-même. Par exemple : "51195" indique un prix de vente conseillé de 11,95 dollars US. Ceci limite le prix des livres aux USA à 99,99 dollars... En Grande-Bretagne, un livre utilisant le code "01199" serait acheté pour 11,99 livres sterling, alors qu'en Allemagne il pourrait être acheté pour 11,99 euros, montrant qu'il ne peut pas être considéré comme un 9 / 14

indicateur sûr de monnaie. Les vendeurs de livres en Allemagne vendant des livres importés d'angleterre ou des Etats-Unis collent généralement leur propre étiquettes imprimées, utilisant les valeurs en Euro, pardessus le code à barres original. Les codes commençant par le chiffre 9 ont une signification spécifique : 90000 : pas de prix de vente conseillé 99991 : exemplaire à titre gracieux, ne pas revendre 99990 : utilisé par le National Association of Colleges Stores pour marquer les livres usagés 900001-98999 : à usage interne pour les éditeurs Les codes supplémentaires sont imprimés avec les valeurs imprimées, en haut du code, et avec une longueur plus courte que le code EAN/UPC. Utilisation du composant - produire des codes à barres Le composant vous permet de créer une image, représentant un code à barres, et ce en utilisant un seul appel de méthode. Barcode_Create Barcode_Create (barcodetype; code; createchecksum; showchecksum; printcode; {chartarea}) -> Barcodepicture Paramètres Type Description barcodetype Texte Type du code à barres code Texte Code/nombre à produire createchecksum Booléen Créer et ajouter un checksum showchecksum Booléen Montrer/cacher le checksum en clair dans le texte imprimé printcode Booléen Imprimer le code en texte clair par-dessus chartarea EntierLong Référence à une zone 4D Chart existante Barcodepicture Image L'image du code à barres créé Description La commande Barcode_Create crée un code à barres en tant qu'image. Le paramètre barcodetype indique le type du code à barres ; il doit être l'un de ces types supportés par le composant : Industrial 2 of 5 Interleaved 2 of 5 Code39 Code128A Code128B Code128C EAN8 EAN13 UPC-A 10 / 14

UPC-E Supplemental2 Supplemental5 Le paramètre code spécifie le code à créer. Selon le paramètre barcodetype, il y a plusieurs règles à suivre pour le contenu et la longueur. Référez-vous aux descriptions des types de codes à barres. Si le paramètre code contient des caractères non supportés ou une longueur de code invalide, l'image retournée sera vide. Le paramètre createchecksum vous permet d'activer le calcul du chiffre de contrôle (check sum). A noter que ceci n'est pas requis pour tous les codes à barres. Le paramètre showchecksum vous permet de cacher le checksum dans le texte imprimé en clair par-dessus le code à barres. Montrer le checksum est requis pour les codes de type EAN et UPC. Le paramètre printcode vous permet de ne pas imprimer le texte en clair par-dessus le code à barres. Imprimer le texte est requis pour les codes à barres de type EAN et UPC. Le paramètre optionnel chartarea vous permet de spécifier une zone 4D Chart déjà existante pour la création de l'image du code à barres. Si le paramètre n'est pas passé, la méthode crée une nouvelle zone 4D Chart dont elle disposera automatiquement. S'il y a beaucoup de codes à barres à créer, l'exécution de la méthode sera plus rapide si vous créez une zone 4D Chart une seule fois et que vous la réutilisez. Créer 100 codes à barres de type EAN (en mode compilé sur un AMD 2400 CPU sous Windows XP) prend 3200 ticks (ce qui représente 5,5 secondes) si la zone 4D Chart a besoin d'être recréée chaque fois, et seulement 120 ticks (2 secondes) si la zone est déjà créée et réutilisée. Il est important d'effacer la zone (en utilisant ch_creer DOCUMENT) après chaque génération de code à barres pour réinitialiser la zone. Paramètres optionnels La largeur, la hauteur et la police sont automatiquement définies, mais ces paramètres peuvent être modifiés. Il y a six variables qui peuvent être définies et changer le comportement : Barcode_Width 1 Largeur d'une barre Barcode_Height 40 (25) Hauteur d'une barre (réduite automatiquement pour le code additionnel) Barcode_Add 3 Hauteur additionnelle pour les barres de début, milieu, fin des codes de type EAN et UPC. Barcode_Font Arial Police d'impression du texte en clair Barcode_FontSize 9 Taille de la police Barcode_FontOffset 5 Distance entre le code à barres et le texte en clair 11 / 14

Si la variable Barcode_Width est à zéro, la méthode définira sa valeur automatiquement, sinon elle utilise la valeur paramétrée. Dans ce cas, toutes les valeurs doivent être définies! Pour améliorer la lisibilité de l'impression avec les imprimantes à jet d'encre, la méthode crée automatiquement une image bitmap de 300 dpi. Les tests ont prouvé que la lisibilité est grandement améliorée comparativement aux images vectorielles de 72 dpi. Pour ce faire, on crée une image quatre fois plus grande (avec une largeur de 4 pixels pour une barre, une police de taille 36, etc.). Après la création, l'image est convertie en bitmap par ce code : $picture := $picture $picture et diminuée proportionnellement par : $picture := $picture * 0,25 Ce calcul n'est effectuée qu'en mode automatique, c'est-à-dire si la variable Barcode_Width est égale à zéro. Si les variables sont prédéfinies, l'image est retournée comme elle l'est en mode vectoriel. Nous recommandons de toujours réduire à l'échelle ; les valeurs 3 et 4 pour une mise à l'échelle ont donné de bon résultats selon nos tests. Exemple $barcode:=barcode_create ("Code128B";"4DDE700";Vrai; Vrai; Vrai) barchart:=ch_hors ecran $scale:=4 ` crée une image plus grande, augmente la lisibilité pour les imprimantes à jet d'encre Barcode_Height:=40*$scale Barcode_Width:=1*$scale Barcode_Add:=3*$scale Barcode_Font:="Arial" Barcode_FontSize:=9*$scale Barcode_FontOffset:=5*$scale $barcode:=barcode_create ("Code128B";"4DDE700"; Vrai; Vrai; Vrai;barchart) $barcode:=$barcode $barcode ` converti en bitmap $barcode:=$barcode*(1/$scale) ` réduit à la taille d'origine ch_creer DOCUMENT (barchart) $barcode2:=barcode_create ("Code128B";"4DDE800"; Vrai; Vrai; Vrai;barchart) $barcode2:=$barcode2 $barcode2 ` converti en bitmap $barcode2:=$barcode2*(1/$scale) ` réduit à la taille d'origine ch_detruire HORS ECRAN (barchart) Barcode_Calc_Checksum Barcode_Calc_Checksum (barcodetype; code) -> Checksum Paramètre Type Description 12 / 14

barcodetype Texte Type du code à barres code Texte Code / numéro à produire Checksum Texte Chiffre de contrôle créé Description La méthode Barcode_Calc_Checksum crée un chiffre de contrôle pour le code passé, conformément aux règles liées aux différents types de codes à barres. Le paramètre barcodetype donne le type de code à barres ; il doit être l'un des types de codes supportés. Le paramètre code spécifie le code à créer. Selon le paramètre barcodetype passé, il y a plusieurs règles à suivre concernant le contenu et la longueur. Référez-vous à la description des différents types de codes à barres présentés précédemment. Si le paramètre code contient des caractères non supportés ou a une longueur non valide, la méthode retourne un checksum égal à "?". Le chiffre de contrôle, checksum, est une chaîne de un ou deux caractères parmi les caractères supportés selon le type de code à barres passé dans barcodetype. Par exemple, pour le code Code128C, ce sera une chaîne de un ou deux caractères utilisant les chiffres de 0 à 9. Il n'est pas nécessaire d'utiliser cette méthode. Les chiffres de contrôle peuvent aussi être automatiquement calculés pendant la création du code à barres. Cette méthode permet, si besoin est, de stocker le checksum dans un système d'inventaire ou de vérifier si un numéro entré est valide. Exemple $number:="12345678" $checksum:=barcode_calc_checksum ("EAN8";Sous chaine($number;1;7)) Si ($checksum#sous chaine($number;8;1)) ALERTE("The EAN8 number "+$number+" is incorrect (check sum invalid)") Fin de si Addendum : les polices de codes à barres Il est également possible d'imprimer des codes à barres en utilisant des polices spéciales. Beaucoup de personnes choisissent cette solution. L'inconvénient principal est que ces polices ont besoin d'être installées sur l'ordinateur de tous les utilisateurs, ce qui rend le support aux utilisateurs moins évident. Souvent, ces polices sont commercialisées, mais quelques autres sont disponibles gratuitement. Voici une URL vers des polices gratuites (licence GNU) PostScript Type 1, qui proposent les codes 128, 39, Interleaved 2, UPC A, E, et EAN 8 et 13. http://user.it.uu.se/~jan/barfonts/ 13 / 14

même site, autre lien : http://www.karrman.org/barfonts/ Autre Lien http://www.barcodeisland.com/ 14 / 14