Bonjour,
je voudrais lancer un rapport à partir d'un formulaire.
Ce rapport prendrait la valeur en cours d'un champ du formulaire comme
filtre.
Un de vous sait-il comment s'y prendre ?
merci par avance
Chi
Bonjour,
je voudrais lancer un rapport à partir d'un formulaire.
Ce rapport prendrait la valeur en cours d'un champ du formulaire comme
filtre.
Un de vous sait-il comment s'y prendre ?
merci par avance
Chi
Bonjour,
je voudrais lancer un rapport à partir d'un formulaire.
Ce rapport prendrait la valeur en cours d'un champ du formulaire comme
filtre.Un de vous sait-il comment s'y prendre ?
Bonjour,
Il faut une Macro appliquée au clic sur un bouton.
J.M
Bonjour
LeChi wrote
je voudrais lancer un rapport à partir d'un formulaire.
Ce rapport prendrait la valeur en cours d'un champ du formulaire comme
filtre.
Comme Jean-Michel l'a indiqué un peu de programmation est nécessaire.
Plusieurs approches seraient possibles. Je te joins un des exemples anciens
que j'avais proposé.
Dans l'exemple le rapport est fondé sur une requête. Il s'agit d'un rapport
non créé avec l'extension report builder (car à l'époque l'extension n'était
pas systématiquement installée). Toutefois le programme fonctionne aussi
si le rapport est créé par cette extension puisque c'est la requête source
qui sera modifiée.
La macro modifie le SQL de cette requête en fonction de la valeur des
champs du formulaire (en l'occurrence on veut limiter le rapport entre
deux dates).
RapportParam.odb
<http://nabble.documentfoundation.org/file/n4063544/RapportParam.odb>
Cordialement
Pierre-Yves
Suite...
pierre-yves samyn wrote
Je te joins un des exemples anciens que j'avais proposé.
Regardant d'un peu plus près cet exemple je m'aperçois qu'un
peu de "toilettage" y était nécessaire. Tu trouveras une version
"nettoyée" et un complément d'explications ici:
https://wiki.documentfoundation.org/Macros/Base/003/fr
Cordialement
Pierre-Yves
Merci,
mais, comment faire en sorte que le rapport prenne la valeur d'un champ du
formulaire comme filtre ?
Chi
Jean Michel PIERRE wrote
Bonjour
LeChi wrote
cependant, la base exemple (les deux) ne fonctionne pas chez moi.
Le rapport ne change pas, malgré les changements de dates que j'effectue.
As-tu téléchargé et enregistré la base sur ton poste ?
As-tu autorisé l'exécution des macros ?
Quel est le niveau de sécurité dans Outils> Options> LibreOffice>
Sécurité des macros (niveau moyen est un bon compromis)?
Tu ne donnes guère d'indications... Le formulaire comprend des dates
par défaut. Garder ces dates puis cliquer sur le bouton Rapport
ouvre ce dernier pour 2 enregistrements.
Modifier la date de début pour 01/06/12 (par exemple) puis
cliquer sur le bouton devrait afficher 5 enregistrements.
As-tu des messages d'erreur ?
Cordialement
Pierre-Yves
Merci Pierre-Yves
cependant, la base exemple (les deux) ne fonctionne pas chez moi.
Le rapport ne change pas, malgré les changements de dates que j'effectue.
Mon libre office est 4.0.2.2
Mon PC est sous linux mint 12
bien à toi
Chi
évidemment ...
la sécurité des macros était en "élevé", ce qui fait que rien ne se passait.
mise en "moyen", tout fonctionne.
merci Pierre-Yves,
je vais m'en inspirer pour ma base.
Cordialement,
Chi
Encore une question, ma donnée est dans un sous-formulaire.
Comment dois-je formuler
oForm = thisComponent.DrawPage.Forms.getByName("F_report")
pour arriver au sous-formulaire que j'appellerai "SF_report "
merci par avance
réponse à moi-même :
oForm =
thisComponent.DrawPage.Forms.getByName("F_Freres").getByName("SF_Freres")
résolu
merci