PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Impression sur papier continu
Impression sur papier continu
Iniciado por Alain COCCONI, 29,abr. 2019 13:30 - 3 respuestas
Miembro registrado
6 mensajes
Publicado el 29,abril 2019 - 13:30
Bonjour
En Windev 22 j'essaye d'imprimer un ticket de caisse sur une imprimante dédiée.
Bien sur ce ticket peut avoir une longueur variable.
J'ai beau essayer de définir un type de papier 'continu' dans l’éditeur d'état, celui-ci remet 'feuilles séparées' dans la description de l'état. Et bien sur l'impression du ticket se fait comme sur du papier A4, avec des sauts de pages etc...
J'ai essayé le code ci-dessous, mais la hauteur de la page n'est pas prise en compte.
Si quelqu'un pouvait m'aider à mettre en place la bonne méthode pour imprimer un ticket de caisse ?

En plus ETAT_RecuTicket.DEBUT_DOCUMENT..Hauteur, ETAT_RecuTicket.FIN_DOCUMENT..hauteur et ETAT_RecuTicket.CORPs..Hauteur génèrent des erreurs à l'execution indiquants que les objets DEBUT_DOCUMENT, FIN_DOCUMENT et CORPS n'existent pas !

Merci par avance

Le code windev 22 :

// Indique qu'on n'utilise plus les paramètres d'impression standard
iParamètre(iImprimanteDéfaut, Faux)
iParamètre(iFormatPapierPerso) // Essayé plusieurs valeurs dont "259"

// On récupère toutes les valeurs de tailles des blocs de notre état
// Ici je n'ai que 3 blocs : DEBUT_DOCUMENT, FIN_DOCUMENT et CORPS, les noms des blocs ne sont pas reconnus à l'execution !
rDebut_de_document est un réel = 21 * 10 //ETAT_RecuTicket.DEBUT_DOCUMENT..Hauteur * 10
rFin_de_document est un réel = 17 * 10 //ETAT_RecuTicket.FIN_DOCUMENT..hauteur * 10

// On multiplie le corps par le nombre de lignes a imprimer
rCorps est un réel = 6 * 10 * (ltabTicket..Occurrence) // ETAT_RecuTicket.CORPs..Hauteur * 10 * ltabTicket..Occurrence

// Il ne reste plus qu'a redéfinir la taille du papier
rHauteurTicket est un réel = rDebut_de_document + rCorps + rFin_de_document

//Format de papier utilisateur
iParamètre(iHauteurPapier, rHauteurTicket) // Jamais pris en compte !


// Affichage des paramètres de l'imprimante
Trace("------------------------------------------------------------------")
Trace("Orientation = " + iParamètre(iOrientation))
Trace("FormatPapier = " + iParamètre(iFormatPapier))
Trace("HauteurPage = " + iParamètre(iHauteurPapier))
Trace("LargeurPage = " + iParamètre(iLargeurPapier))
Trace("NbCopie = " + iParamètre(iNbCopie))
Trace("AlimentationPapier = " + iParamètre(iAlimentationPapier))
Trace("ResolutionY = " + iParamètre(iRésolutionY))
Trace("Couleur = " + iParamètre(iCouleur))
Trace("Assemble = " + iParamètre(iAssemblé))
ParamètresSpécifiques est un Buffer = iParamètre(iParamètresSpécifiques)
Trace("Taille Spécifique = " + Taille(ParamètresSpécifiques))
Trace("Spécifique = " + ParamètresSpécifiques)
Trace("------------------------------------------------------------------")

iImprimeEtat(ETAT_RecuTicket,ltabTicket)
Miembro registrado
215 mensajes
Publicado el 29,abril 2019 - 14:21
Bonjour
Perso sur nos imprimante de caisse, dans la description de l"état dans l'onglet format on a : format papier : personnel , type de papier: Feuilles séparées, et dans l'onglet option : coché Etirer ou réduire automatiquement au format supporté
Miembro registrado
6 mensajes
Publicado el 29,abril 2019 - 21:40
Bonjour
Merci de ta reponse !
Mais j'ai déja cette option de coché...
snif
Miembro registrado
6 mensajes
Publicado el 30,abril 2019 - 09:10
Je ne sais pas par quel miracle cela s'est mis a marcher....
la hauteur est bien prise en compte maintenant
pourquoi... mystere