PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Affichage le code barre
Affichage le code barre
Iniciado por NEA, 24,jul. 2017 15:28 - 17 respuestas
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 24,julio 2017 - 15:28
Bonjour!

comment je peux afficher le code barre dans mon application android?
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 24,julio 2017 - 16:53
Bonjour,

avec un champ de type "Code-barres" peut-être ?
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 24,julio 2017 - 18:08
oui, je l'ai utilisé, mais il n'est pas disponible pour android - c'est indiqué dans aide https://doc.pcsoft.fr/fr-FR/?1013109&name=champ_codebarres

par contre ici https://doc.pcsoft.fr/fr-FR/?1000019451 il ya un example pour android avec le champ code barre...

De toutes façons, je l'ai outilisé, mais le code (EAN13) s'affiche incorrect, car pour android "Options non supportées : "Avec vérification", "Taille proportionnelle" et "Valeur du code-barres visible"."

j'ai pensé générer un image à partir d'une variable CodeBarre et après l'afficher dans le champ image, mais je sais pas comment...
Mensaje modificado, 24,julio 2017 - 18:24
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 24,julio 2017 - 19:08
MonEANCode est un CodeBarres
MonEANCode..TypeContenu = cbTypeTexte
MonEANCode..TypeCodeBarres = CB_EAN13
MonEANCode..Contenu = "978020137962"
// Affectation à un champ Code-barres
CBA_SansNom1 = MonEANCode


dans CBA_SansNom1 le code barre s'affiche incorrect

et si je fais
IMG_SansNom1 = dSauveImagePNG(CBA_SansNom1,enMémoire)


sur l'ordi (simulateur) ça marche
mais sur portable ne marche pas -> Commande invalide pour le champ CBA_SansNom1 car ce n'est pas un champ image
Mensaje modificado, 24,julio 2017 - 19:10
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 24,julio 2017 - 20:29
Bizarre, il est pourtant indiqué :

Nouveauté 22
Android : Ce type de champ est désormais disponible pour les applications Android.

Vous voulez donc afficher le code barre dans une combo ?
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 25,julio 2017 - 09:45
Est ce que c'est possible avec une combo?
Miembro registrado
151 mensajes
Popularité : +7 (7 votes)
Publicado el 25,julio 2017 - 09:53
Désolé je me suis trompé, j'ai lu "CBO" au lieu de "CBA". :(

Je ne sais malheureusement pas comment enregistrer un champ code-barres en image.
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 25,julio 2017 - 14:18
Merci en tout cas !:)
:merci:
Miembro registrado
32 mensajes
Popularité : +10 (10 votes)
Publicado el 31,julio 2017 - 15:47
Bonjour,

Effectivement le champs codes-barres en Android ne permet pas d'afficher des codes EAN13.
J'ai pour ma part écrit une procédure qui dessine le code barre en fonction du code ean13 et du champ image qui doit le recevoir.
La lecture fonctionne parfaitement, même sur un écran.
Si cela vous intéresse je peux vous fournir le code de la procédure.

Cordialement

--
Laurent P
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 02,agosto 2017 - 14:46
bonjour!
oui, SVP, ce sera génial!
Miembro registrado
32 mensajes
Popularité : +10 (10 votes)
Publicado el 02,agosto 2017 - 16:37
Bonjour,

Voici l'appel de la procédure GenereImageCodeEAN13:
GenereImageCodeEAN13(sCodeArticle,IMG_Vignette..NomComplet)


Et la procédure:

Procedure GenereImageCodeEAN13(sCodeArt est une chaîne, sChampImage est une chaîne)

i est un entier
nX1 est un entier = 10
nY1 est un entier = 10
nX2 est un entier = 10
nY2 est une entier = 70
nPas est un entier = 2

taStruct est un tableau associatif de chaînes

dDébutDessin({sChampImage,indChamp})

ta_A[0] = "0001101"
ta_A[1] = "0011001"
ta_A[2] = "0010011"
ta_A[3] = "0111101"
ta_A[4] = "0100011"
ta_A[5] = "0110001"
ta_A[6] = "0101111"
ta_A[7] = "0111011"
ta_A[8] = "0110111"
ta_A[9] = "0001011"

ta_B[0] = "0100111"
ta_B[1] = "0110011"
ta_B[2] = "0011011"
ta_B[3] = "0100001"
ta_B[4] = "0011101"
ta_B[5] = "0111001"
ta_B[6] = "0000101"
ta_B[7] = "0010001"
ta_B[8] = "0001001"
ta_B[9] = "0010111"

ta_C[0] = "1110010"
ta_C[1] = "1100110"
ta_C[2] = "1101100"
ta_C[3] = "1000010"
ta_C[4] = "1011100"
ta_C[5] = "1001110"
ta_C[6] = "1010000"
ta_C[7] = "1000100"
ta_C[8] = "1001000"
ta_C[9] = "1110100"

taStruct[0] = "AAAAAA"
taStruct[1] = "AABABB"
taStruct[2] = "AABBAB"
taStruct[3] = "AABBBA"
taStruct[4] = "ABAABB"
taStruct[5] = "ABBAAB"
taStruct[6] = "ABBBAA"
taStruct[7] = "ABABAB"
taStruct[8] = "ABABBA"
taStruct[9] = "ABBABA"

sVal est une chaîne
nChiffre est un entier
nDebut est un entier

nDebut = sCodeArt[[1]]
sStruct est une chaîne

sStruct = taStruct[nDebut]
sTableau est une chaîne

dTexte(nX1 -10 ,nY2 ,nDebut,Noir)

dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)
nX1 += nPas
nX2 += nPas


POUR i = 2 A 7
nChiffre = sCodeArt[[i]]
dTexte(nX1,nY2 ,nChiffre,Noir)
sTableau = "ta_" + sStruct[[i-1]]
sVal = {sTableau,indVariable}[nChiffre]
POUR n = 1 A 7
SI sVal[[n]] = "1" ALORS
dLigne(nX1,nY1,nX2,nY2,Noir,nPas)
nX1 += nPas
nX2 += nPas
SINON
dLigne(nX1,nY1,nX2,nY2,Blanc,nPas)
nX1 += nPas
nX2 += nPas
FIN
FIN

FIN

dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas

POUR i = 8 A 13
nChiffre = sCodeArt[[i]]
dTexte(nX1,nY2 ,nChiffre,Noir)
sVal = ta_C[nChiffre]
POUR n = 1 A 7
SI sVal[[n]] = "1" ALORS
dLigne(nX1,nY1,nX2,nY2,Noir,nPas)
nX1 += nPas
nX2 += nPas
SINON
dLigne(nX1,nY1,nX2,nY2,Blanc,nPas)
nX1 += nPas
nX2 += nPas
FIN
FIN

FIN

dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Blanc,nPas)
nX1 += nPas
nX2 += nPas
dLigne(nX1,nY1,nX2,nY2+10,Noir,nPas)


--
Laurent P
Miembro registrado
25 mensajes
Popularité : +1 (1 vote)
Publicado el 10,agosto 2017 - 10:19
Merci beaucoup!!!!!:merci:
Publicado el 12,abril 2018 - 13:50
Bonjour M Laurent

Comment je peux adapter ton code pour generer l'image QR Code.

J'ai essayé ta procedure pour le code EAN et cela passe a merveille,j'ai besoin de le faire en QR Code

Merci d'avance
Miembro registrado
32 mensajes
Popularité : +10 (10 votes)
Publicado el 12,abril 2018 - 16:53
Bonjour,
A mon avis pour un QR code le plus simple est de développer un webservice pour effectuer le traitement et renvoyer une image...

Bon dév

--
Laurent P
Miembro registrado
12 mensajes
Publicado el 22,abril 2019 - 18:49
Laurent PERETTO
ta_A ta_B ne sont pas declaré est ce qu'il sont de structure ou koi

--
unlocker
Miembro registrado
12 mensajes
Publicado el 22,abril 2019 - 19:35
le probleme quand je done chaine <13 caractere elle me donne faute valeur
Miembro registrado
32 mensajes
Popularité : +10 (10 votes)
Publicado el 29,abril 2019 - 09:15
Bonjour,

Oui désolé, elles sont globales à la fenêtre et n'apparaissaient pas dans la portion de code:
ta_A est un tableau associatif de chaînes
ta_B est un tableau associatif de chaînes

Bon dév

--
Laurent P
Miembro registrado
32 mensajes
Popularité : +10 (10 votes)
Publicado el 29,abril 2019 - 09:18
Maher_unlocker a écrit :
> le probleme quand je done chaine <13 caractere elle me donne faute valeur
Bonjour,
Effectivement dans ma procédure seuls les EAN13 (avec 13 caractères) sont pris en compte, ce qui correspond à mon propre cas d'utilisation.

--
Laurent P