DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion de Windows / Fonctions Code-Barres
  • Conditions d'utilisation
  • Gestion des erreurs
  • Application en arrière-plan : Spécificité à partir de Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Décode les informations stockées dans un code-barres en utilisant la caméra de l'appareil (Android, iPhone, iPad).
Conseil : Préférez le champ Caméra :
Exemple
// Décodage d'un code-barres QR Code
cb est un CodeBarres
cb = CBCapture()
SI ErreurDétectée = Faux _ET_ cb.TypeContenu = cbTypeEmail ALORS
    Info("Adresse email : " + cb.ValeurBrute)
FIN
Syntaxe
<Résultat> = CBCapture([<Type code-barres> [, <Activer le flash>]])
<Résultat> : Variable de type CodeBarres
Variable de type CodeBarres initialisée avec les informations lues dans le code-barres.
iPhone/iPadWidget IOSMac Catalyst Remarque : La propriété TypeCodeBarres de la variable de type CodeBarres n'est pas mise à jour : elle correspond toujours à "QRCode".
<Type code-barres> : Constante de type Entier optionnelle
Type de code-barres pouvant être décodé :
CB_AZTECCode-barres de type Aztec.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_CODE128Code-barres de type Code128.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_CODE39Code-barres de type Code39.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_CODE93Code-barres de type Code93.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_DATAMATRIXCode-barres de type DATAMATRIX.
iPhone/iPadWidget IOSMac Catalyst Non disponible.
CB_EAN128Code-barres de type EAN128.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_EAN13Code-barres de type EAN13.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_EAN8Code-barres de type EAN8.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_INTER2OF5Code-barres de type Interleaved 2 of 5.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_PDF417Code-barres de type PDF417.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_QRCODECode-barres de type QR Code.
CB_UPCACode-barres de type UPC-A.
iPhone/iPadWidget IOSMac Catalyst Non disponible.
CB_UPCECode-barres de type UPC-E.
iPhone/iPadWidget IOSMac Catalyst Ce type de code-barres est disponible à partir de iOS 7.
CB_TOUSTous les types de codes-barres supportés par cette fonction pourront être décodés.

Si ce paramètre n'est pas spécifié, tous les types de codes-barres supportés par cette fonction pourront être décodés.
iPhone/iPadWidget IOSMac Catalyst A partir d'IOS 7, les codes-barres suivants peuvent être décodés : QR Code, UPCE, Code39, Code39Mod43, EAN13, EAN8, Code93, Code128, PDF417 et Aztec.
<Activer le flash> : Booléen optionnel
iPhone/iPadWidget IOSMac Catalyst Mode de gestion du flash :
  • Vrai pour activer le flash,
  • Faux (valeur par défaut) pour ne pas activer le flash.
Remarques

Conditions d'utilisation

AndroidWidget Android Dans une application Android :
  • La fonction CBCapture ouvre une nouvelle fenêtre affichant la prévisualisation de la caméra de l'appareil. Il suffit ensuite de :
    • cadrer le code-barres à décoder dans la zone prévue à cet effet.
    • valider comme pour une prise de photo classique.
  • Le décodage de codes-barres utilise la librairie Zxing (http://code.google.com/p/zxing). Si cette librairie n'est pas présente sur l'appareil, son téléchargement sera automatiquement proposé.
    Attention : Cette librairie impose d'utiliser le mode paysage de l'appareil.
iPhone/iPadWidget IOSMac Catalyst Pour les applications iPhone/iPad :
  • La fonction CBCapture ouvre une nouvelle fenêtre affichant la prévisualisation de la caméra de l'appareil. Il suffit ensuite de cadrer le code-barres à décoder dans la zone prévue à cet effet.
  • La fenêtre permettant de prendre les photos est inclue dans l'application WINDEV Mobile. Aucune librairie supplémentaire n'est nécessaire.
  • Version antérieure à iOS 7 : Seuls les codes-barres de type QR Code peuvent être décodés. Si un autre type de code-barres est scanné, le décodage n'est pas effectué. Le bouton "Annuler" de la fenêtre de décodage permet de fermer cette fenêtre. Dans ce cas, la variable de type CodeBarres n'est pas initialisée.

Gestion des erreurs

Pour savoir si la récupération du code-barres a échoué, utilisez la variable ErreurDétectée.
La fonction échouera dans les cas suivants :
  • si elle est utilisée dans le simulateur,
  • si elle est utilisée dans l'émulateur,
  • si elle est utilisée sur un appareil ne disposant pas d'une caméra.
  • iPhone/iPadWidget IOSMac Catalyst si le bouton "Annuler" a été utilisé. Dans ce cas, la propriété TypeCodeBarre de la variable CodeBarres sera différente de CB_QRCODE.
Android Si le code-barres est décodé mais que son type n'est pas reconnu, la propriété TypeCodeBarre de la variable CodeBarres correspondra à la constante CB_INCONNU.
AndroidWidget Android

Application en arrière-plan : Spécificité à partir de Android 10

A partir de Android 10, il n'est plus possible d'ouvrir une fenêtre lorsque l'application est en arrière-plan.
La fonction CBCapture peut provoquer l'ouverture d'une fenêtre. Si cette fonction est utilisée alors que l'application est en arrière-plan, une erreur fatale sera générée.
Conseils :
  • Il est possible de savoir si l'application est en arrière-plan grâce à la fonction EnModeArrièrePlan.
  • Si une application a besoin d'interagir avec l'utilisateur alors qu'elle se trouve en arrière-plan, la solution consiste à afficher une notification (via le type Notification). Lors du clic sur la notification, l'application sera remise au premier plan si la propriété ActiveApplication est à Vrai. Il est également possible d'ouvrir une fenêtre depuis la procédure passée à la propriété ActionClic.
Liste des exemples associés :
WM Stocks Exemples multiplateforme (WINDEV Mobile) : WM Stocks
[ + ] Cette application permet de réaliser des inventaires et d'enregistrer les résultats dans une base de données.
L'exemple permet de créer des entrées/sorties dans le stock, en scannant directement le code-barres des produits.
Il est optimisé pour être exécuté sur les tablettes.
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.
Classification Métier / UI : Code neutre
Composante : wd290android.aar
Version minimum requise
  • Version 16
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 12/09/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale