Dans une application a chaque impression de ticket j'ai le code suivant:
Procédure TICKET()
CRendu est un booleen
I est un entier
Ligne est une chaine
PortImprimante EST UN ENTIER =-1
Debutrouge est une chaine=caract(27)+caract(52)
Finrouge est une chaine=caract(27)+caract(53)
DebutGras est une chaine=caract(27)+"E"
FinGras est une chaine=caract(27)+"F"
DebutDouble est une chaine=caract(14)
FinDouble est une chaine=caract(20)
Tiroir est une chaine=Caract(26)
TOTAL EST UN REEL DOUBLE
POS EST UN ENTIER
CRendu=souvre(PortImprimante,256,256) // Ouverture du port parallèle
si CRendu alors
ligne=Tiroir;FILDELEAU(PortImprimante,Ligne)
Ligne=DebutDouble+" FACTURE / COMMANDE"+Findouble
FILDELEAU(PortImprimante,Ligne)
Ligne=" TVA"+CA.TAUX_TVA+"% INCLUSE ("+CA.NUM_TVA+")"
FILDELEAU(PortImprimante,Ligne)
Ligne=DebutDouble+"
"+DROITE(DATESYS(),2)+"/"+MILIEU(DATESYS(),5,2)+"/"+GAUCHE(DATESYS(),4)+"
N.
"+TICKET+FinDouble
FILDELEAU(PortImprimante,Ligne)
ligne="";FILDELEAU(PortImprimante,Ligne)
Ligne=Debutgras+"QT ARTICLE PRIX"+Fingras
FILDELEAU(PortImprimante,Ligne)
Ligne=repete("-",40)
FILDELEAU(PortImprimante,Ligne) // Ligne de tirets
// Impression des lignes du ticket
POUR I=1 TO TABLEOCCURRENCE("TABLE1")
Ligne=VersChaine(a5[i],"03.0f")+" "+COMPLETE(A4[I],25)+"
"+verschaine(A7[I],"10.2f")
FILDELEAU(PortImprimante,Ligne)
TOTAL=TOTAL+A7[I]
FIN
// Impression du pied du ticket
Ligne=" --------"
FILDELEAU(PortImprimante,Ligne) // Ligne de tirets
Ligne=" Total Net "+VERSCHAINE(TOTAL,"10,2f")
FILDELEAU(PortImprimante,Ligne)
Ligne="";FILDELEAU(PortImprimante,Ligne);FILDELEAU(PortImprimante,Ligne)
Ligne=" AVEC NOS REMERCIEMENTS";FILDELEAU(PortImprimante,Ligne)
Ligne="";FILDELEAU(PortImprimante,Ligne);FILDELEAU(PortImprimante,Ligne);FI
L
DELEAU(PortImprimante,Ligne)
Ligne=DebutDouble+gauche(CA.ADRESSE_1,20)
FILDELEAU(PortImprimante,Ligne)
Ligne=gauche(CA.ADRESSE_2,20)
FILDELEAU(PortImprimante,Ligne)
Ligne=gauche(CA.ADRESSE_4,20)+findouble
FILDELEAU(PortImprimante,Ligne)
Ligne="";FILDELEAU(PortImprimante,Ligne);FILDELEAU(PortImprimante,Ligne);FI
L
|DELEAU(PortImprimante,Ligne);FILDELEAU(PortImprimante,Ligne);FILDELEAU(Port
I
mprimante,Ligne);FILDELEAU(PortImprimante,Ligne);FILDELEAU(PortImprimante,L
i
gne)
sferme(PortImprimante) // Fermeture du port parallèle
sinon
erreur("Erreur d'ouverture du port parallèle")
fin
Lorsque le pc se met en veille j'ai chaque fois l'erreur :
Le port parallèle n'est pas initialisé alors que j'ai chaque fois avant
l'impression la ligne suivante:
CRendu=souvre(PortImprimante,256,256) // Ouverture du port parallèle
--
Clausen Michel (079/220.76.42)
Audio-Vidéo-Informatique SA
Gare 12
CH 1950 SION
027/322.68.14
.