PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → soucis avec iPosx() et/ou iLargeurTexte()
soucis avec iPosx() et/ou iLargeurTexte()
Iniciado por Jean-Louis Lefebvre, set., 02 2005 2:22 PM - 4 respostas
Publicado em setembro, 02 2005 - 2:22 PM
Bonjour à tous,

j'ai des soucis avec le positionnement en colonne et iPosx()

pas sur le poste de développement mais en clientele ==> URGENT

je pense à un problème de driver mais ????

voici le code utilisé :

cpe_txt est une chaine
cpe_num est un entier
:
:
:

iparamètre("Orientation=PAYSAGE")
imarge(15,15,15,15)
iaperçu(12Pages,"blabla....")
:
:
:
cpe_txt=NumériqueVersChaine(PaiePrePens.MtImposable,"6.2fs")
cpe_num=iLargeurTexte(cpe_txt)
iPosX(142-cpe_num)
iImprimeMot(cpe_txt)
:
:
:
isauteligne()
:
:
:
ifinimprme()

Parfois, sur certain poste, l'impression se décalle vers la gauche, comme s'il y avait un retour en marge ==> iposx(0)

ou alors un décalage de +/- 20 position comme si iLargeurTexte renvoyé 20

bizarre

si quelqu'un a une idée

Pas posible d'utiliser l'éditeur d'état car le traitement d'impression est TRES spécifique

merci d'avance de votre aide
Publicado em setembro, 02 2005 - 6:48 PM
Lorsque tu fais le numériqueverschaine, rajoute un sansespace(numeriqueverschaine, sinon, la valeur te retourne des espaces à gauche de ta chaine pour completer la valeur suivant le format que tu as définis.
L'impression de ces espaces peuvent varier et décaler le champ suivant l'imprimante que tu sélectionnes...
Je pense que c'est une piste à suivre.
Publicado em setembro, 02 2005 - 6:51 PM
Autre chose... je ne vois pas de définition de police avant l'impression.
Fais un icreepolice puis un ipolice.
Publicado em setembro, 03 2005 - 9:51 PM
Bonjour,


Essaye ça :

cpe_txt=NumériqueVersChaine(PaiePrePens.MtImposable,"%6.2fs")

Le pourçentage respecte le nombre de chiffre indiqué sinon complete au nombre défini par des espaces a gauche.

j'ai déjà utilisé ça avec les imprimentes à ticket 'epson' pour les superettes ( code à barre ) avec la commande sEcrit(port imprimente,.....), et il respecte le nombre indiqué dans le 'numeriqueverschaine' sachant que le ticket ne depasse pas 33 caractères de largeur. Donc il faut bien gérer cette largeur !!!!!

Bonne chance et bon devloppement ...


AliDev7@yahoo.fr
Publicado em setembro, 05 2005 - 12:24 PM
Merci

Je modifie le code et implémente en clientele