Tiroir caisse

Signaler
Messages postés
5
Date d'inscription
dimanche 19 mars 2006
Statut
Membre
Dernière intervention
17 avril 2006
-
Messages postés
2
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
4 septembre 2012
-
Salut a tous et a toutes ,
je pense que cé pour la 3éme fois que je pose ma question sur la possiblilité d'avoir
un code en VB pour l'ouverture d'un tiroir caisse lier a une Imprimante a ticket de type Epson TM-U220 .l'imprimante est connecter a l'ordinateur par RS232.
Merci Trés infiniment pour votre aident et à Trés bientôt
[mailto:Abdou_2255@hotmail.com Abdou_2255@hotmail.com]
A voir également:

7 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Et en cherchant un peu ?? Dans la doc de ton imprimante ou sur internet

Ben moi je dirais qu'il suffit simplement de te connecter à ton imprimante, puis de lui envoyer la commande d'ouverture du tiroir caisse.

En sollicitant ton fidèle compagnon Google, tu serais tomber sur ton non-moins fidèle partenaire Epson qui t'aurais montrer cette page : http://www.pdv.epson.fr/support/faq/tm/tm007.htm

Pour utiliser un port série, si tu ne sais pas, il y a quantité de source sur ce site. Même l'exemple donné dans l'aide de VB devrai suffire pour ça.

Donc à moment donné dans ton code te devrais avoir à tapper la ligne suivante :

MsComm.output = Chr$(27) & Chr$(112) & Chr$(0) & Chr$() & Chr$()

Je ne sais pas à quoi correspond exactement les 2 derniers pamarètres (durée de l'impulsion certainement, mais codé comment ?) faut que tu vois de ton coté dans la doc de l'imprimante, ou en faisant des essais directement avec l'imprimente.



<hr size ="2" width="100%">
Messages postés
5
Date d'inscription
dimanche 19 mars 2006
Statut
Membre
Dernière intervention
17 avril 2006

Merci pour votre réponse mais j'ai essyaer le code suivant mé dommage !!!
AppMain.MSComm1.InBufferCount = 0
AppMain.MSComm1.InBufferSize = 1024
AppMain.MSComm1.OutBufferSize = 1024
AppMain.MSComm1.InputMode = 0
AppMain.MSComm1.InputLen = 1
AppMain.MSComm1.RThreshold = 1
AppMain.MSComm1.SThreshold = 1


AppMain.MSComm1.Settings = "300,N,8,1"
AppMain.MSComm1.CommPort = Val(Right(Rs!com, 1))
AppMain.MSComm1.PortOpen = True


If AppMain.MSComm1.PortOpen = False Then
message = "Erreur d'ouverture du Port série N° " & AppMain.MSComm1.CommPort
MsgBox message
AppMain.MSComm1.PortOpen = False
Else
AppMain.MSComm1.Output = "WRITE" + vbCr
AppMain.MSComm1.PortOpen = False
End If
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Quel est ton problème exactement avec ce code ?

Juste en passant un petit détail
AppMain.MSComm1.Output = "WRITE" + vbCr
AppMain.MSComm1.PortOpen = False
tu ferme le port trop vite, il faut attendre que tous les caractères aient été envoyés avant de fermer le port :
AppMain.MSComm1.Output = "WRITE" + vbCr
do
doevents
loop until AppMain.MSComm1.OutBufferCount=0
AppMain.MSComm1.PortOpen = False


Messages postés
5
Date d'inscription
dimanche 19 mars 2006
Statut
Membre
Dernière intervention
17 avril 2006

oué ta raison , je vais prendre en compte cette remarque , oh je soufre de ce tirroir caisse , bon en tout cas merci bcp pour ton aide,
Ton Ami Abdel
Messages postés
5
Date d'inscription
dimanche 19 mars 2006
Statut
Membre
Dernière intervention
17 avril 2006

A casy :
bas jé modifier mon code et j'utilise celui la :

MSComm1.CommPort = "2"
MSComm1.Settings = "9600,N,8,1"
MSComm1.PortOpen = True


If MSComm1.PortOpen = False Then
MsgBox "Erreur d'ouverture du Port série N° " & MSComm1.CommPort


MSComm1.PortOpen = False
Else
MSComm1.Output = Chr$(27) & Chr$(112) & Chr$(0) & Chr$(t1) & Chr$(T2)
Do
DoEvents
Loop Until MSComm1.OutBufferCount = 0
MSComm1.PortOpen = False
End If
!!!!! mais le port s'ouvre pas ???? il donne comme message :
impossible de définir l'état de communication il ya pt être un ou plusieur paramétre de communication non valide 'Error 8015'
t1 et t2 c'est pour envoyer des impulsions a l'imprimante en ms
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Essaye avec ça : MSComm1.CommPort = 2, ça devrai aller un peu mieux je pense

Quant à T1 et T2, oui, c'est pour envoyer des impulsions. C'est certainement des valeurs numériques qui doivent avoir un rapport avec la durée de l'impulsion. Mais c'est spécifique à ton tiroir caisse, pour ça faut que tu regarde de sa doc pour savoir quoi y mettre comme valeur.

PS : Dans ce cas tu utilise le port COM2, vérifie bien qu'il existe sur ton
PC et que tu es branché sur la bonne prise. Sur les PC récents le COM2
est rarement cablé à l'arrière du PC et a même tendance à ne plus
exister dans le système.


Messages postés
2
Date d'inscription
vendredi 8 juillet 2011
Statut
Membre
Dernière intervention
4 septembre 2012

Mon tiroir baud rate : 9600,N,8,1
Mode com1:9600
content-"0"

SVP SVP aider moi a écrire un code source vb 6.0 pour que le tiroir sois ouvert

et merci