Formatage des champs dans un état
DSI WDF
Inscrit:
13/02/2006 16:52
Post(s): 266
Bonjour, j'ai un état imprimant la liste des sous-traitant de mon appli.

Je voudrais que lorsque le champ est vide, une ligne en pointillé se mette afin de permettre une saisie manuelle sur papier aprés impression qui serait propre.

J'ai essayé un petit bout de code qui marche trés bien, mais le souci et que si mon résultat dépasse 1 Page, il ne marche plus à partir de la page 2...

Merci de me donner une solution a ceux que ça parlera...

Voici ma procédure qui est exécutée pendant l'initialisation de chaque champ !!!


PROCEDURE FormateChamp(NomDuChamp)
//** Déclaration des Variables **
Re_MonMultiple est un réel
Ent_NumPage est un entier
Re_XChampDebut est un réel
Re_XChampFin est un réel
Re_YChampDebut est un réel
Re_YChampFin est un réel
//** Initialisation des Variables **
Re_XChampDebut = {NomDuChamp,indChamp}..X
Re_XChampFin = {NomDuChamp,indChamp}..X + {NomDuChamp,indChamp}..Largeur
//** Initialisation des Y **
Re_YChampDebut = {NomDuChamp,indChamp}..Y
Re_YChampFin = {NomDuChamp,indChamp}..Y + {NomDuChamp,indChamp}..Hauteur
//** Initialisation du numéro de page **
Ent_NumPage = 1
//** On ajoute aux coordonnées les impressions précédentes des autres blocs **
Re_MonMultiple = (G_Ent_NbPassages + 1) / 4
TANTQUE Re_MonMultiple > 1
	Ent_NumPage++
	Re_MonMultiple = Re_MonMultiple / 4
FIN
SI Ent_NumPage = 1 ALORS
	Re_YChampDebut += (CORPS..Hauteur * G_Ent_NbPassages) + (HAUT_DE_PAGE..Hauteur * Ent_NumPage)
	Re_YChampFin += (CORPS..Hauteur * G_Ent_NbPassages) + (HAUT_DE_PAGE..Hauteur * Ent_NumPage)
SINON
	Re_YChampDebut += (CORPS..Hauteur * G_Ent_NbPassages) + (HAUT_DE_PAGE..Hauteur * Ent_NumPage) + (BAS_DE_PAGE..Hauteur * (Ent_NumPage - 1))
	Re_YChampFin += (CORPS..Hauteur * G_Ent_NbPassages) + (HAUT_DE_PAGE..Hauteur * Ent_NumPage) + (BAS_DE_PAGE..Hauteur * (Ent_NumPage - 1))
	Re_YChampDebut += (COMPLEMENT_CORPS..Hauteur * (Ent_NumPage - 1))
	Re_YChampFin +=  (COMPLEMENT_CORPS..Hauteur * (Ent_NumPage - 1))
FIN
//** On regarde si le champ à une valeur ou non **
SELON {NomDuChamp,indChamp}
	//** Champ Vide **
	CAS "" :
		//** On mets au niveau du bas du champ une ligne pointillé pour donné l'emplacement de la saisie **
		iCadre(Re_XChampDebut,Re_YChampDebut,Re_XChampFin,Re_YChampFin, 1, 0, iBleuFoncé, iPointillé, iHorizontale, iBordBas)
	//** Champ avec une donnée **
	AUTRES CAS :
		//** On ne fait rien **
FIN

Contribution le : 04/10/2006 09:31
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
Developpeur WDF
Inscrit:
10/01/2005 09:08
Post(s): 101
Bonjour

Et si tu essayé de mettre ta procedure (avant impression de tes champs et non pas à l'initialisation)

en espérant t'avoir aider

@+++

Contribution le : 04/10/2006 09:50
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
DSI WDF
Inscrit:
13/02/2006 16:52
Post(s): 266
Autant pour moi...

Ma procédure est déjà sur Avant Impression du champ !!!!

Contribution le : 04/10/2006 11:27
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
DSI WDF
Inscrit:
03/12/2004 07:46
Post(s): 235
Pourquoi faire simple lorqu'on peut faire compliqué

Peut-être qu'en modifiant le code avant affichage du champs de la manière suivante:
SI ValeurDuChamp~="" alors Champ = repete("_",n) sinon Champ = ValeurDuChamp
ou encore
Champs~="" ? repete("_",n) sinon Champ = ValeurDuChamp


et si tu veux faire parfait tu remplance n (le nombre de caractéres) par NomDeRubrique..Taille

Bon Dev

Contribution le : 04/10/2006 14:21
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
DSI WDF
Inscrit:
13/02/2006 16:52
Post(s): 266
Pourquoi pas en effet, mais lorsque tu n'as pas de limites de taille dans ton champ de paramétré, comment fais tu ???

Contribution le : 04/10/2006 17:07
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Salut,

Il me semble qu'il y a une solution plus simple.

Pourquoi n'utilises tu pas les blocs d'itération ???

Il te suffit d'en créer un, de mettre un champ libelle avec un trait en haut découper tu as le choix, et donc au moment opportun de faire appel a ce bloc via la fonction iimprimebloc

l'avantage ton trait sera toujours de le même grandeur donc ca vient rejoindre ce que tu as écrit concernant les champs sans limite de taille.

Bon dev.

a+++

Contribution le : 04/10/2006 19:30
Créer un fichier PDF de la contribution Imprimer


Re: Formatage des champs dans un état
DSI WDF
Inscrit:
13/02/2006 16:52
Post(s): 266
Pourquoi pas en effet mais je ne vois pas en quoi cela va changer mon problème ???

Que tu imprimes ton bloc CORPS ou un bloc d'itération , le principe est le même.

Je ne peux gérer les bordures propres du champ, sinon cela serait le plus simple pour moi !!!

Il ne faut pas perdre de vue que lorsque j'imprime mon CORPS, j'ai des champs qui sont renseignées et d'autres non, c'est justement pour ces derniers que je veux afficher un trait en bordure basse..

Si je me trompe dans mes dires, pourrais tu me filer un bout de code qui me dirigerais vers la solution !!!

Merci

Contribution le : 05/10/2006 08:30
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2