OVH Cloud OVH Cloud

[Debutant] Imprimer qu'une seule ligne...

12 réponses
Avatar
Auden69
Bonjour,

J'ai crée une fenêtre avec tout pleins de champs : nom, prénoms etc
reliés à une base HyperFile. J'aimerais pouvoir à partir des infos presentes
dans la fenêtre (donc relative à un seul individu) imprimer un
formulaire(état deja créé). Mon probléme survient lors de l'impression.
Lorsque je fais imprimer, il me sort tous les individus de ma base HF... Je
comprends la logique de Windev mais je ne vois pas comment lui dire de ne
selectionner que l'individu en cours... Je suppose que ca doit etre tout
bête mais là je sèche un peu... je débute avec les états et et les fonction
iImprimeEtat. J'ai cherché du coté de Hfiltre mais je n'ai pas réussi ce que
je souhaitais faire :-(

Merci
Auden69

10 réponses

1 2
Avatar
Stephan COMBES
Auden69 a écrit :
Bonjour,

J'ai crée une fenêtre avec tout pleins de champs : nom, prénoms etc
reliés à une base HyperFile. J'aimerais pouvoir à partir des infos presentes
dans la fenêtre (donc relative à un seul individu) imprimer un
formulaire(état deja créé). Mon probléme survient lors de l'impression.
Lorsque je fais imprimer, il me sort tous les individus de ma base HF... Je
comprends la logique de Windev mais je ne vois pas comment lui dire de ne
selectionner que l'individu en cours... Je suppose que ca doit etre tout
bête mais là je sèche un peu... je débute avec les états et et les fonction
iImprimeEtat. J'ai cherché du coté de Hfiltre mais je n'ai pas réussi ce que
je souhaitais faire :-(

Merci
Auden69





Salut,

C'est quelle version de WD ?

Avec hfiltre tu es sur une piste qui peut fonctionner.
hfiltre(MonFichier, MaCleDeParcoursDansEtat, MaCondition) MaCondition =
l'identifiant doit être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan
Avatar
Xavier - CAII
Salut et bon courage ...

En fait la tu créer ton état sur ta table en générale.
Il faut je pense que tu créer un reqeute qui prendra en paramètre : ton
enregistrement.
Ensuite il faut que tu crée ton état en fonction de cette requete.

Je c pas si j'ai été très clair.
Je vais manger, je reviens a 14h00 ... ;)

--
Gzav


"Auden69" a écrit dans le message de
news:420b40a5$0$29735$
Bonjour,

J'ai crée une fenêtre avec tout pleins de champs : nom, prénoms


etc
reliés à une base HyperFile. J'aimerais pouvoir à partir des infos


presentes
dans la fenêtre (donc relative à un seul individu) imprimer un
formulaire(état deja créé). Mon probléme survient lors de l'impression.
Lorsque je fais imprimer, il me sort tous les individus de ma base HF...


Je
comprends la logique de Windev mais je ne vois pas comment lui dire de ne
selectionner que l'individu en cours... Je suppose que ca doit etre tout
bête mais là je sèche un peu... je débute avec les états et et les


fonction
iImprimeEtat. J'ai cherché du coté de Hfiltre mais je n'ai pas réussi ce


que
je souhaitais faire :-(

Merci
Auden69




Avatar
Auden69
Bonjour
WD 9

C'est sacrement rapide pour repondre sur ce forum!!
Merci

"Stephan COMBES" a écrit dans le message de news:
420b41ba$0$2191$
Auden69 a écrit :
Bonjour,

J'ai crée une fenêtre avec tout pleins de champs : nom, prénoms
etc reliés à une base HyperFile. J'aimerais pouvoir à partir des infos
presentes dans la fenêtre (donc relative à un seul individu) imprimer un
formulaire(état deja créé). Mon probléme survient lors de l'impression.
Lorsque je fais imprimer, il me sort tous les individus de ma base HF...
Je comprends la logique de Windev mais je ne vois pas comment lui dire de
ne selectionner que l'individu en cours... Je suppose que ca doit etre
tout bête mais là je sèche un peu... je débute avec les états et et les
fonction iImprimeEtat. J'ai cherché du coté de Hfiltre mais je n'ai pas
réussi ce que je souhaitais faire :-(

Merci
Auden69



Salut,

C'est quelle version de WD ?

Avec hfiltre tu es sur une piste qui peut fonctionner. hfiltre(MonFichier,
MaCleDeParcoursDansEtat, MaCondition) MaCondition = l'identifiant doit
être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan


Avatar
Auden69
Oui mais dans hfiltre j'aimerais un truc du genre

mon fichier = individu
ma cledeparcours = idautomatique
macondition = mafenetre.monchampidautomatique

Et apparement
je ne peux pas :-(
Auden69

Avec hfiltre tu es sur une piste qui peut fonctionner. hfiltre(MonFichier,
MaCleDeParcoursDansEtat, MaCondition) MaCondition = l'identifiant doit
être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan


Avatar
Stephan COMBES
Re,

si idautomatique est numérique
Hfiltre(individu, idautomatique, "idautomatique="+monchampidautomatique)

si idautomatique est une chaine (il faut ajouter des guillets simples '
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")

Bon dev.

Stephan

Auden69 a écrit :
Oui mais dans hfiltre j'aimerais un truc du genre

mon fichier = individu
ma cledeparcours = idautomatique
macondition = mafenetre.monchampidautomatique

Et apparement
je ne peux pas :-(
Auden69


Avec hfiltre tu es sur une piste qui peut fonctionner. hfiltre(MonFichier,
MaCleDeParcoursDansEtat, MaCondition) MaCondition = l'identifiant doit
être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan







Avatar
Auden69
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")


Ok je n'ai plus de probleme de synthaxe mais une fois que j'ai ça je fais
comment pour imprimer le resultat ?
Si je fais :

Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")
iImprimeEtat (MonEtat) // je reviens au point de depart... la ligne
precedente n'est pas prise en compte

Auden69
Merci


"Stephan COMBES" a écrit dans le message de news:
420b4aca$0$2167$
Re,

si idautomatique est numérique
Hfiltre(individu, idautomatique, "idautomatique="+monchampidautomatique)

si idautomatique est une chaine (il faut ajouter des guillets simples '
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")

Bon dev.

Stephan

Auden69 a écrit :
Oui mais dans hfiltre j'aimerais un truc du genre

mon fichier = individu
ma cledeparcours = idautomatique
macondition = mafenetre.monchampidautomatique

Et apparement
je ne peux pas :-(
Auden69


Avec hfiltre tu es sur une piste qui peut fonctionner.
hfiltre(MonFichier, MaCleDeParcoursDansEtat, MaCondition) MaCondition =
l'identifiant doit être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan








Avatar
Eric CHOQUET
Bonjour,

Dans la description de ton état, onglet données, coche "Seulement les lignes
sélectionnées".
ça devrait être bon.

a+
Eric

"Auden69" a écrit dans le message de news:
420b40a5$0$29735$
Bonjour,

J'ai crée une fenêtre avec tout pleins de champs : nom, prénoms etc
reliés à une base HyperFile. J'aimerais pouvoir à partir des infos
presentes dans la fenêtre (donc relative à un seul individu) imprimer un
formulaire(état deja créé). Mon probléme survient lors de l'impression.
Lorsque je fais imprimer, il me sort tous les individus de ma base HF...
Je comprends la logique de Windev mais je ne vois pas comment lui dire de
ne selectionner que l'individu en cours... Je suppose que ca doit etre
tout bête mais là je sèche un peu... je débute avec les états et et les
fonction iImprimeEtat. J'ai cherché du coté de Hfiltre mais je n'ai pas
réussi ce que je souhaitais faire :-(

Merci
Auden69



Avatar
Real Philippon
Salut,

Jette un coup d'oeil sur BorneMin et BorneMax, cela fonctionne très bien et
j'ai trouvé plus simple à mettre en place. Le même État me sert pour la
liste complète des clients et la liste partielle.

Réal Phil
Avatar
Stephan COMBES
Salut,

Pour vérifier que ton filtre fonctionne correctement tu peux faire un test :

i est un entier=0

si Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")="" alors
info("Problème dans le filtre")
sinon
hlitpremier(individu, idautomatique)
tantque pas hendehors()
i++
hlitsuivant(individu, idautomatique)
fin
fin
info(i + " enregistrements lus")

Remarque pertinente de Real Philippon : utilise les bornes dans le filtre :

hfiltre(individu, idautomatique, monchampidautomatique,
monchampidautomatique)
Voir l'aide et ces exemples pour plus de détail.

Bon dev.

Stephan

Auden69 a écrit :
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")


Ok je n'ai plus de probleme de synthaxe mais une fois que j'ai ça je fais
comment pour imprimer le resultat ?
Si je fais :

Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")
iImprimeEtat (MonEtat) // je reviens au point de depart... la ligne
precedente n'est pas prise en compte

Auden69
Merci


"Stephan COMBES" a écrit dans le message de news:
420b4aca$0$2167$

Re,

si idautomatique est numérique
Hfiltre(individu, idautomatique, "idautomatique="+monchampidautomatique)

si idautomatique est une chaine (il faut ajouter des guillets simples '
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")

Bon dev.

Stephan

Auden69 a écrit :

Oui mais dans hfiltre j'aimerais un truc du genre

mon fichier = individu
ma cledeparcours = idautomatique
macondition = mafenetre.monchampidautomatique

Et apparement
je ne peux pas :-(
Auden69



Avec hfiltre tu es sur une piste qui peut fonctionner.
hfiltre(MonFichier, MaCleDeParcoursDansEtat, MaCondition) MaCondition =
l'identifiant doit être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan











Avatar
Auden69
Bonjour,

Merci j'ai pu controler mon filtre grace a ton test. Le filtre est enfin ok
avec

HFiltre(Eleve,IDEleve, Eleves_bas.ID,Eleves_bas.ID) ce qui me donne 1
resultat, ce qui est logique...

mais si j'essaye le code suivant comme me l'a suggéré Romain PETIT pour
imprimer le resultat, ca me sort la totalité de ma base HF. Pourtant les
deux codes me semble tres proche..

sRubParcours est une chaine
eBorne est un entier = val(Eleves_bas.ID)
sRubParcours = HFiltre(ELEVE, IDELEVE, eBorne , eBorne)
SI sRubParcours<>"" ALORS
//on continue
IImprimeEtat(montetat)
FIN


Alors mon ultime question est, maintenant que j'ai mon filtre comment
imprimer le resultat du filtre et non pas la totalité...

Auden69 qui y croit encore..
PS : Merci pour le testeur de filtres, je vais le mettre de coté celui-là
:-)


"Stephan COMBES" a écrit dans le message de news:
420cb1d4$0$832$
Salut,

Pour vérifier que ton filtre fonctionne correctement tu peux faire un test
:

i est un entier=0

si Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")="" alors
info("Problème dans le filtre")
sinon
hlitpremier(individu, idautomatique)
tantque pas hendehors()
i++
hlitsuivant(individu, idautomatique)
fin
fin
info(i + " enregistrements lus")

Remarque pertinente de Real Philippon : utilise les bornes dans le filtre
:

hfiltre(individu, idautomatique, monchampidautomatique,
monchampidautomatique)
Voir l'aide et ces exemples pour plus de détail.

Bon dev.

Stephan

Auden69 a écrit :
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")


Ok je n'ai plus de probleme de synthaxe mais une fois que j'ai ça je
fais comment pour imprimer le resultat ?
Si je fais :

Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")
iImprimeEtat (MonEtat) // je reviens au point de depart... la ligne
precedente n'est pas prise en compte

Auden69
Merci


"Stephan COMBES" a écrit dans le message de
news: 420b4aca$0$2167$

Re,

si idautomatique est numérique
Hfiltre(individu, idautomatique, "idautomatique="+monchampidautomatique)

si idautomatique est une chaine (il faut ajouter des guillets simples '
Hfiltre(individu, idautomatique,
"idautomatique='"+monchampidautomatique+"'")

Bon dev.

Stephan

Auden69 a écrit :

Oui mais dans hfiltre j'aimerais un truc du genre

mon fichier = individu
ma cledeparcours = idautomatique
macondition = mafenetre.monchampidautomatique

Et apparement
je ne peux pas :-(
Auden69



Avec hfiltre tu es sur une piste qui peut fonctionner.
hfiltre(MonFichier, MaCleDeParcoursDansEtat, MaCondition) MaCondition =
l'identifiant doit être celui de l'enregistrement que je veux imprimer.

Courage...

Stephan













1 2