Après windows pour les nuls, voici PB pour les bons (ou presque).

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.
  • Index
  •  » Powerscripts
  •  » Récupérer l'event indiquant que la lecture par douchette est terminée

#1 10-04-2013 15:03:23

Sebou  
Membre Power Geek
Lieu: Villeneuve-sur-Lot
Date d'inscription: 21-12-2007
Messages: 189
Pépites: 1,787
Banque: 13,693,461,510

Récupérer l'event indiquant que la lecture par douchette est terminée

Bonjour,

J'ai une douchette USB (Intermec SR30 pour être précis) et j'aimerais savoir comment je peux récupérer l'information m'indiquant que la lecture du code barre est terminée.

J'ai cherché dans l'aide et j'ai trouvé des pistes : ISCP, GID, FID mais tout cela reste flou pour moi et je ne sais pas comment faire.

Visiblement, il y a un event end of read session qui est levé mais je ne sais pas comment le récupérer

Merci

Hors ligne

 

#2 10-04-2013 15:30:20

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

Salut Sebou,

perso quand j'ai utilisé des scanners / douchettes usb c'était toujours simplement en rempalcement d'un clavier.

c-à-d que au lieu de taper à la main un n° dans un SingleLineEdit par exemple et bien la douchette scanne le code barre, le transforme en équivalent numérique et envoie ensuite cette chaine de caractère au pc comme le ferait un clavier. donc si le focus est sur un champ texte il se remplit avec le n° scanné.

Ensuite je pense que la plupart des scanners envoie un CarriageReturn/LineFeed juste après le n° donc ça permets de déclencher l'event modified d'un sle par exemple. Si ta douchette ne le fait pas par défaut peut être regarder si on peut pas la configurer comme ça.

Sinon au pire déclarer un custome user event dans ton contrôle sle mappé sur "pbm_enchange" (event déclenché à chaque fois que le sle est modifié, sans besoin de presser enter/tab)

ça t'aide ou pas du tout ?


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#3 10-04-2013 15:32:42

Sebou  
Membre Power Geek
Lieu: Villeneuve-sur-Lot
Date d'inscription: 21-12-2007
Messages: 189
Pépites: 1,787
Banque: 13,693,461,510

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

rincevent a écrit:

Salut Sebou,

perso quand j'ai utilisé des scanners / douchettes usb c'était toujours simplement en rempalcement d'un clavier.

c-à-d que au lieu de taper à la main un n° dans un SingleLineEdit par exemple et bien la douchette scanne le code barre, le transforme en équivalent numérique et envoie ensuite cette chaine de caractère au pc comme le ferait un clavier. donc si le focus est sur un champ texte il se remplit avec le n° scanné.

Ensuite je pense que la plupart des scanners envoie un CarriageReturn/LineFeed juste après le n° donc ça permets de déclencher l'event modified d'un sle par exemple. Si ta douchette ne le fait pas par défaut peut être regarder si on peut pas la configurer comme ça.

Sinon au pire déclarer un custome user event dans ton contrôle sle mappé sur "pbm_enchange" (event déclenché à chaque fois que le sle est modifié, sans besoin de presser enter/tab)

ça t'aide ou pas du tout ?

Pas vraiment car la zone de saisie peut être remplie aussi à l'aide d'un clavier virtuel.

En gros, soit on scanne la référence, soit on la remplit à la main en cliquant sur un clavier virtuel

Hors ligne

 

#4 11-04-2013 08:12:00

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

et donc comment tu détectes que la frappe est finie si on fait par clavier virtuel alors ?

et qu'en est-il de l'envoi d'un CR/NL àla fin du scan par la douchette ?


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#5 11-04-2013 08:15:28

Sebou  
Membre Power Geek
Lieu: Villeneuve-sur-Lot
Date d'inscription: 21-12-2007
Messages: 189
Pépites: 1,787
Banque: 13,693,461,510

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

rincevent a écrit:

et donc comment tu détectes que la frappe est finie si on fait par clavier virtuel alors ?

et qu'en est-il de l'envoi d'un CR/NL àla fin du scan par la douchette ?

Je détecte que la frappe manuelle est terminée car j'ai un bouton Valider à côté du clavier ^^
La douchette renvoie CR + LN à la fin

Hors ligne

 

#6 11-04-2013 08:30:44

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

Sebou a écrit:

La douchette renvoie CR + LN à la fin

Donc si tu détectes le CR + LN c'est que la lecture est bien finie...


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#7 11-04-2013 09:16:19

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

Sebou a écrit:

La douchette renvoie CR + LN à la fin



Donc à priori déclenche l'event itemchanged/modified dans lequel tu n'a plus qu'a coder la même chose que dans ton bouton valider...

Dernière modification par rincevent (11-04-2013 12:05:10)


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#8 11-04-2013 10:19:11

Ben53  
Membre Geek
Date d'inscription: 18-02-2010
Messages: 46
Pépites: 184
Banque: 0

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

Dans ma société nous utilisons beaucoup de module avec des lecteurs de code à barre et la technique que nous utilisons est simplissime mais pas forcément la meilleur :

- l'utilisateur positionne le curseur dans une zone de saisie (ou positionnement automatique)
- si l'utilisateur saisie au clavier virtuel, pas de soucie
- si l'utilisateur badge une référence, un code "retour chariot" est envoyé par le lecteur de code à barres et l'astuce consiste à mettre le bouton de validation en "DEFAULT", comme ça l'action de validation est automatique

Hors ligne

 

#9 11-04-2013 12:00:06

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

rincevent a écrit:

Sebou a écrit:

La douchette renvoie CR + LN à la fin



Donc à priori déclenche l'event itemchanged dans lequel tu n'a plus qu'a coder la même chose que dans ton bouton valider...

Tu as testé si le itemchanged est déclenché ?


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#10 11-04-2013 12:20:50

Sebou  
Membre Power Geek
Lieu: Villeneuve-sur-Lot
Date d'inscription: 21-12-2007
Messages: 189
Pépites: 1,787
Banque: 13,693,461,510

Re: Récupérer l'event indiquant que la lecture par douchette est terminée

Oui, après avoir reparamétré la douchette, l'itemchanged est bien déclenché.

Je voulais juste récupérer l'événement qui était levé sous Windows.
C'était une manière aussi pour moi de savoir le faire dans d'autres cas

Hors ligne

 
  • Index
  •  » Powerscripts
  •  » Récupérer l'event indiquant que la lecture par douchette est terminée

Pied de page des forums

Propulsé par FluxBB 1.2.22