PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Propriétés spécifiques à la description des variables de type CodeBarres
  • Correspondance entre la propriété ..Contenu et la propriété ..TypeContenu
  • Fonctions utilisant des variables de type CodeBarres
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Le type CodeBarres permet de manipuler les informations contenues dans un code-barres. Les caractéristiques de ce code-barres peuvent être définies et modifiées à l'aide de différentes propriétés WLangage.
Les utilisations du type codeBarres sont les suivantes :
    Remarque : Pour plus de détails sur la déclaration de ce type de variable et l'utilisation des propriétés WLangage, consultez Déclaration d'une variable.
    Exemple
    MonQRCode est un CodeBarres
    MonQRCode..TypeContenu = cbTypeTexte
    MonQRCode..TypeCodeBarres = CB_QRCODE
    MonQRCode..Contenu = "http://www.pcsoft.fr"

    // Affectation à un champ Code-barres
    CBA_ChampCB = MonQRCode
    Versions 24 et supérieures
    // Génération d'un QRCode avec une image
    MonQRCode est un CodeBarres
    MonQRCode..TypeContenu = cbTypeTexte
    MonQRCode..TypeCodeBarres = CB_QRCODE
    MonQRCode..Contenu = "[no_http]www.pcsoft.fr"
    MonQRCode..CorrectionErreur = qrcodeNiveauM
    // Pour une proportion d'image de 3%,
    // on pourrait mettre aussi qrcodeNiveauH ou qrcodeNiveauQ, mais pas qrcodeNiveauL
    MonQRCode..Image = fRepExe + fSep + "pcsoft.png"
    MonQRCode..ProportionImage = 3
    // Affectation à un champ Code-barres
    CBA_ChampCB = MonQRCode
    Nouveauté 24
    // Génération d'un QRCode avec une image
    MonQRCode est un CodeBarres
    MonQRCode..TypeContenu = cbTypeTexte
    MonQRCode..TypeCodeBarres = CB_QRCODE
    MonQRCode..Contenu = "[no_http]www.pcsoft.fr"
    MonQRCode..CorrectionErreur = qrcodeNiveauM
    // Pour une proportion d'image de 3%,
    // on pourrait mettre aussi qrcodeNiveauH ou qrcodeNiveauQ, mais pas qrcodeNiveauL
    MonQRCode..Image = fRepExe + fSep + "pcsoft.png"
    MonQRCode..ProportionImage = 3
    // Affectation à un champ Code-barres
    CBA_ChampCB = MonQRCode
    // Génération d'un QRCode avec une image
    MonQRCode est un CodeBarres
    MonQRCode..TypeContenu = cbTypeTexte
    MonQRCode..TypeCodeBarres = CB_QRCODE
    MonQRCode..Contenu = "[no_http]www.pcsoft.fr"
    MonQRCode..CorrectionErreur = qrcodeNiveauM
    // Pour une proportion d'image de 3%,
    // on pourrait mettre aussi qrcodeNiveauH ou qrcodeNiveauQ, mais pas qrcodeNiveauL
    MonQRCode..Image = fRepExe + fSep + "pcsoft.png"
    MonQRCode..ProportionImage = 3
    // Affectation à un champ Code-barres
    CBA_ChampCB = MonQRCode
    Remarques

    Propriétés spécifiques à la description des variables de type CodeBarres

    Les propriétés suivantes peuvent être utilisées pour manipuler un code-barres :
    Nom de la propriétéType manipuléEffet
    ContenuTout typeValeur du code-barres.
    • Pour les codes-barres de type QR Code, le type de cette valeur dépend de la propriété ..TypeContenu.
      Consultez la note ci-dessous pour connaître la correspondance entre le type de contenu et le type de la valeur.
    • Pour les codes-barres autres que QR Code, lors de la lecture d'un code-barres, cette propriété est toujours de type "Chaîne de caractères" et sa valeur est identique à celle de la propriété ..ValeurBrute.
    CorrectionErreurConstante de type EntierNiveau de correction de l'erreur : permet de définir le seuil de lecture d'un code-barres endommagé.
    Cette propriété est disponible uniquement pour :
    • les codes-barres de type QR Code.
    • les codes-barres de type PDF-417.
    • Versions 21 et supérieures
      les codes-barres de type Aztec.
      Nouveauté 21
      les codes-barres de type Aztec.
      les codes-barres de type Aztec.
    Les constantes disponibles pour les QR Code sont :
    • qrcodeNiveauH : environ 30% des mots encodés peuvent être restaurés.
    • qrcodeNiveauL : environ 7% des mots encodés peuvent être restaurés.
    • qrcodeNiveauM : environ 15% des mots encodés peuvent être restaurés.
    • qrcodeNiveauQ : environ 25% des mots encodés peuvent être restaurés.
    Le niveau de correction choisi entraîne :
    • le changement de la taille du code-barres.
    • la modification du nombre maximum de caractères possibles dans le code-barres.
    Plus le niveau de correction est élevé, plus le dessin du code-barres aura une taille importante et moins il sera possible de dessiner des données. Par contre, plus le niveau de correction sera élevé, plus le code-barres sera lisible si le support est endommagé.
    Conseils :
    • Si le code-barres contient une URL, le niveau L est suffisant.
    • Si un logo est inséré dans le code-barres, il vaut mieux passer à un niveau supérieur (M ou Q).
    • Si le code-barres est destiné à l'impression d'étiquettes pour un entrepôt, il faut utiliser le niveau H.
    Pour les codes-barres de type PDF-417, le niveau de correction de l'erreur correspond à un entier compris entre 0 et 8.
    Versions 21 et supérieures
    Pour les codes-barres de type Aztec, le niveau de correction correspond à un entier compris entre 5 et 95, représentant le pourcentage de correction d'erreur. La valeur par défaut est 33. Si la valeur donnée est
    • inférieure à 5, la valeur retenue sera 5,
    • supérieure à 95, la valeur retenue sera 95,
    • négative, la valeur retenue sera 33 (valeur par défaut).
    Nouveauté 21
    Pour les codes-barres de type Aztec, le niveau de correction correspond à un entier compris entre 5 et 95, représentant le pourcentage de correction d'erreur. La valeur par défaut est 33. Si la valeur donnée est
    • inférieure à 5, la valeur retenue sera 5,
    • supérieure à 95, la valeur retenue sera 95,
    • négative, la valeur retenue sera 33 (valeur par défaut).
    Pour les codes-barres de type Aztec, le niveau de correction correspond à un entier compris entre 5 et 95, représentant le pourcentage de correction d'erreur. La valeur par défaut est 33. Si la valeur donnée est
    • inférieure à 5, la valeur retenue sera 5,
    • supérieure à 95, la valeur retenue sera 95,
    • négative, la valeur retenue sera 33 (valeur par défaut).
    Versions 24 et supérieures
    Image
    Nouveauté 24
    Image
    Image
    Image ajoutée au centre du code-barres (uniquement pour les codes-barres de type QR Code). Cette image peut correspondre à :
    • une variable de type Image,
    • une chaîne de caractères contenant le chemin du fichier image à utiliser,
    • une rubrique de type mémo image, ...
    OptionsConstante ou combinaison de constantes de type entierCaractéristiques du code-barres. Ces caractéristiques sont utilisées notamment lors de l'impression d'un code-barres avec la fonction iImprimeCodeBarre. Les constantes pouvant être utilisées sont les suivantes :
    • CB_Bas : Code-barres positionné en bas du rectangle destination.
    • CB_CaractèreControle : Code-barres contenant des caractères de contrôle (valable uniquement pour les codes-barres de type CB_CODE128, CB_DATAMATRIX, CB_EAN128, CB_GS1_128 et CB_PDF417). Par défaut, les caractères de contrôle sont encadrés par les caractères "<" et ">". Pour ne pas interpréter ces caractères comme caractères de contrôle, il suffit de les doubler.
      Pour plus de détails sur les caractères acceptés, consultez Les différents types de codes-barres.
    • CB_CaractèreVérification : Code-barres contenant des caractères de vérification (valable uniquement pour les codes-barres de type CB_CODE128, CB_DATAMATRIX, CB_EAN128, CB_GS1_128 et CB_PDF417).
      Si cette option est sélectionnée, les constantes CB_CaractèreControle et CB_JeuxCaractères sont automatiquement prises en compte.
    • CB_CentreH : Centrage horizontal du code-barres dans le rectangle destination.
    • CB_CentreV : Centrage vertical du code-barres dans le rectangle destination.
    • CB_Droite : Code-barres aligné à droite dans le rectangle destination.
    • CB_Etendu : Code-barres étendu (valable uniquement pour les codes-barres de type CB_CODE39 et CB_CODE93).
    • Versions 18 et supérieures
      CB_FormateTexte : Formate le texte affiché pour les codes-barres de type EAN 128 : des parenthèses sont ajoutées autour des AIs dans le texte imprimé.
      Nouveauté 18
      CB_FormateTexte : Formate le texte affiché pour les codes-barres de type EAN 128 : des parenthèses sont ajoutées autour des AIs dans le texte imprimé.
      CB_FormateTexte : Formate le texte affiché pour les codes-barres de type EAN 128 : des parenthèses sont ajoutées autour des AIs dans le texte imprimé.
    • CB_Gauche : Code-barres aligné à gauche dans le rectangle destination.
    • CB_Haut : Code-barres positionné en haut du rectangle destination.
    • CB_IgnoreFormatage : Ignore les parenthèses d'un code 128, EAN-128 ou GS1-128 (valable uniquement pour les codes-barres de type CB_CODE128, CB_EAN128 et CB_GS1_128).
      Les parenthèses sont utilisées pour rendre le code-barres plus lisible par un humain, mais ne sont pas dessinées dans le code.
    • CB_JeuxCaractères : Code-barres utilisant un ou plusieurs jeux de caractères utilisés pour la compression du code-barres. Ce jeu de caractères doit être défini dans la valeur du code-barres.
      Pour plus de détails sur les jeux de caractères, consultez Les différents types de codes-barres.
    • CB_NonProportionnel : Ajuste le code-barres à la taille du rectangle destination.
    • CB_SansTexte : Affiche le texte sous le code-barres.
      Le texte est normalisé pour les codes-barres de type CB_UPCA, CB_UPCE, CB_EAN13 et CB_EAN8.
      Pour les autres types de codes-barres, le texte peut dépasser du cadre d'affichage du code-barres.
    • CB_Vérification : Code-barres avec caractères de vérification (valable uniquement pour les codes-barres de type CB_CODE39, CB_CODE93, CB_INTER2OF5 et CB_CODABAR).
    • CB_Vertical : Imprime le code-barres verticalement.
    • CB_90 : Imprime le code-barres verticalement.
    • CB_180 : Imprime le code-barres en faisant une rotation à 180 degrés.
    • CB_270 : Imprime le code-barres en faisant une rotation à 270 degrés.
    Versions 24 et supérieures
    ProportionImage
    Nouveauté 24
    ProportionImage
    ProportionImage
    RéelPourcentage de la surface du code-barres occupée par l'image ajoutée au centre du code-barres (uniquement pour les codes-barres de type QR Code pourlesquels la propriété ..Image est spécifiée). Cette valeur ne doit pas dépasser la moitié de la surface réservée pour la correction d'erreur.
    Valeur de ..CorrectionErreurValeur maximale de
    ..ProportionImage
    qrcodeNiveauH5
    qrcodeNiveauL1
    qrcodeNiveauM3
    qrcodeNiveauQ 5
    TypeCodeBarresConstante de type EntierType de code-barres :
    • Versions 21 et supérieures
      CB_AZTEC : Code-barres de type AZTEC.
      Nouveauté 21
      CB_AZTEC : Code-barres de type AZTEC.
      CB_AZTEC : Code-barres de type AZTEC.
    • Versions 21 et supérieures
      CB_MAXICODE : Code-barres de type MaxiCode.
      Nouveauté 21
      CB_MAXICODE : Code-barres de type MaxiCode.
      CB_MAXICODE : Code-barres de type MaxiCode.
    • CB_QRCODE : Code-barres de type QR Code. Cette constante est utilisée par défaut lors de la création d'une variable de type CodeBarres.
    • CB_UPCA : Code-barres de type UPC-A.
    • CB_UPCE : Code-barres de type UPC-E.
    • CB_EAN8 : Code-barres de type EAN8.
    • CB_EAN13 : Code-barres de type EAN13.
    • CB_CODE39 : Code-barres de type Code39.
    • CB_CODE93 : Code-barres de type Code93.
    • CB_CODE128 : Code-barres de type Code128.
    • Versions 18 et supérieures
      CB_GS1_128 : Code-barres de type GS1-128 (nouveau nom du code-barres EAN128).
      Nouveauté 18
      CB_GS1_128 : Code-barres de type GS1-128 (nouveau nom du code-barres EAN128).
      CB_GS1_128 : Code-barres de type GS1-128 (nouveau nom du code-barres EAN128).
    • CB_INTER2OF5 : Code-barres de type Interleaved 2 of 5.
    • CB_DATAMATRIX : Code-barres de type DATAMATRIX.
    • CB_PDF417 : Code-barres de type PDF417.
    • CB_CODABAR : Code-barres de type Codabar.
    • CB_CODE11 : Code-barres de type Code11.
    • CB_EAN128 : Code-barres de type EAN128.
    • CB_MSI : Code-barres de type MSI.
    Ces types sont également disponibles pour les impressions réalisées à l'aide de la fonction iImprimeCodeBarre.
    TypeContenuConstante de type EntierNature des données stockées dans le code-barres :
    • cbTypeTexte (valeur par défaut lors de la création de la variable) : Texte brut
    • cbTypeTéléphone : Numéro de téléphone
    • cbTypeSMS : Numéro de SMS
    • cbTypeEmail : Adresse email
    • cbTypeContact : Description d'un contact
    • cbTypePosition : Position géographique
    • cbTypeURL : URL (signet). Pour insérer une adresse http dans le code-barres, utilisez le type cbTypeTexte.
      Cette constante est conservée par compatibilité et doit être utilisée dans des cas très spécifiques.
    • cbTypeMarket : Lien vers une application sur Google Play (pour une application Android uniquement)
    • cbTypeWiFi : Paramètres de connexion à un réseau Wi-Fi (pour une application Android uniquement)
    Remarque : Ces natures de données sont disponibles pour les codes-barres 2D (par exemple QR Code, Aztec, datamatrix, PDF417, ...). Pour les codes-barres autres que les codes-barres 2D, la nature des données est toujours de type texte.
    ValeurBruteChaîne de caractères UnicodeValeur brute du code-barres.
    Pour les codes-barres autres que ceux de type QR Code, la valeur de cette propriété est identique à celle de la propriété ..Contenu.
    Cette propriété est disponible en lecture uniquement.

    Remarque : Ces propriétés peuvent être utilisées avec une des deux syntaxes suivantes :
    • <Nom de la variable>..<Nom de la propriété>
    • <Nom de la variable>.<Nom de la propriété>

    Correspondance entre la propriété ..Contenu et la propriété ..TypeContenu

    Type de contenuType de la valeur (..Contenu)Remarque
    cbTypeTexteChaîne de caractèresExemple : "WinDev c'est bien !"
    cbTypeTéléphoneChaîne de caractèresExemple : "0612345678"
    cbTypeSMSChaîne de caractères
    En lecture : Les membres de la structure SMS (SMS.Message et SMS.Numéro) seront automatiquement renseignés avec les valeurs lues dans le code-barres. le contenu correspondra à une chaîne de la forme : <Numéro> + RC + <Message>
    En génération : S'ils existent, les membres de la structure SMS (SMS.Message et SMS.Numéro) seront automatiquement pris en compte. Il est également possible d'utiliser une chaîne de caractères de la forme : <Numéro> + RC + <Message>
    Exemple : "0612345678<RC>Texte à envoyer"
    cbTypeURLChaîne de caractères
    Correspond à un signet. Le contenu sera encodé sous la forme "urlto::URL". Par exemple : "urlto::http://www.pcsoft.fr". Certains décodeurs ne supportent pas ce type de contenu.
    Pour spécifier une adresse http, utilisez le type de contenu cbTypeTexte.
    Remarque : Cette constante est conservée par compatibilité et doit être utilisée dans des cas très spécifiques.
    Exemple : "http://www.google.fr"
    cbTypeMarketChaîne de caractèresExemple : "market://search?q=pname:com.societe.application"
    cbTypeWiFiChaîne de caractèresChaîne de caractères de la forme :
    <SSID> + TAB + <Protocole de sécurité>+ TAB + <Clé>
    Exemple : "MonRéseau<TAB>WPA<TAB>mdp"
    cbTypeEmailChaîne de caractèresExemple : "nom@mail.com"
    cbTypeContactVide.
    En lecture : Les membres de la structure mContact seront automatiquement renseignés avec les valeurs lues dans le code-barres.
    En génération : Les membres de la structure mContact seront automatiquement utilisés pour générer le code-barres.
    cbTypePositionVariable de type géoPosition.
    En lecture : Les propriétés ..Latitude et ..Longitude de la variable seront automatiquement renseignées avec les valeurs lues dans le code-barres.
    En génération : Les propriétés ..Latitude et ..Longitude de la variable seront automatiquement utilisées pour générer le code-barres.

    Fonctions utilisant des variables de type CodeBarres

    Versions 16 et supérieures
    CBCapture
    Nouveauté 16
    CBCapture
    CBCapture
    Décode les informations stockées dans un code-barres en utilisant la caméra de l'appareil (Android, iPhone, iPad).
    Versions 16 et supérieures
    CBDécode
    Nouveauté 16
    CBDécode
    CBDécode
    Décode les informations stockées dans un code-barres de type QR Code.
    Versions 09 et supérieures
    iImprimeCodeBarre
    Nouveauté 09
    iImprimeCodeBarre
    iImprimeCodeBarre
    Imprime un code-barres (à l'intérieur d'un rectangle).
    Remarque : Pour réinitialiser le contenu d’une variable de type CodeBarres, il est possible d’utiliser la fonction VariableRAZ.
    Liste des exemples associés :
    Android Inventaire Android (WINDEV Mobile) : Android Inventaire
    [ + ] Cette application permet de réaliser les inventaires et d'enregistrer les résultats dans une base de données.
    Version minimum requise
    • Version 16
    Documentation également disponible pour…
    Commentaires
    Cliquez sur [Ajouter] pour publier un commentaire