Bonjour,
j'aimerai, un peu comme dans les formulaires (formulaires et sous-formulaires) pouvoir intégrer dans un rapport des données venant de plusieurs requêtes ou tables.
Pour l'instant, mes recherches sont restées infructueuses.
Si qq'un à déjà traités ce genre de rapport...
Merci d'avance
Je suis en SRB 1.1.0.
[SRB] Créer un rapport avec données de 2 requêtes
Modérateur : Vilains modOOs
Règles du forum
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
Cette section est dédiée au module Base et plus particulièrement sur le langage SQL ou sur les connexions aux SGBD tiers. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Pour accélérer les réponses, vous pouvez mettre en ligne votre base en joignant un fichier ODB : comment faire.
-
Globo
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 20 oct. 2008 18:27
[SRB] Créer un rapport avec données de 2 requêtes
Dernière modification par Bidouille le 09 nov. 2009 10:36, modifié 1 fois.
Raison : Titre modifié pour plus de clarté
Raison : Titre modifié pour plus de clarté
Openoffice 3.1.1 sous Windows XP SP3
-
Pierre-Yves Samyn
- Grand Maître de l'OOffice

- Messages : 11276
- Inscription : 02 mai 2006 08:42
Re: [SRB] Créer un rapport avec data de 2 requêtes
Bonjour
Le principe est un peu différent des formulaires dans la mesure où, pour ceux-ci, chaque formulaire/sous-formulaire inclus dispose de sa propriété "type de contenu/contenu".
Pour les rapports, seul le niveau le plus haut (rapport donc) permet cela. En conséquence il faut que la source de données "contiennent" toutes les données à imprimer.
Le plus simple est de créer une requête reliant les tables et d'utiliser cette requête comme source mais il est aussi possible d'utiliser une instruction SQL.
Ensuite, pour confectionner le rapport, on utilise les "groupements". Pour prendre un exemple "classique" si on veut imprimer des commandes par client on fera un groupement "client" (groupe sur la clé primaire du client), on demande (en général) un en-tête de groupe pour y inclure les champs (nom et adresse du client par exemple), éventuellement on demande un pied de groupe pour y inclure par exemple le total des commandes.
La section détail imprimera les données relatives aux commandes : date, numéro, total.
Ceci pour un cas simple... On peut bien sûr compliquer en ajoutant des groupes.
Par exemple, on peut ajouter un groupement "commande" pour afficher dans son en-tête la référence, la date de la commande, le total dans le pied de ce groupe, et en section détail les informations relatives aux lignes : référence produit, quantité commandée, total ligne, etc.
Le principe est un peu différent des formulaires dans la mesure où, pour ceux-ci, chaque formulaire/sous-formulaire inclus dispose de sa propriété "type de contenu/contenu".
Pour les rapports, seul le niveau le plus haut (rapport donc) permet cela. En conséquence il faut que la source de données "contiennent" toutes les données à imprimer.
Le plus simple est de créer une requête reliant les tables et d'utiliser cette requête comme source mais il est aussi possible d'utiliser une instruction SQL.
Ensuite, pour confectionner le rapport, on utilise les "groupements". Pour prendre un exemple "classique" si on veut imprimer des commandes par client on fera un groupement "client" (groupe sur la clé primaire du client), on demande (en général) un en-tête de groupe pour y inclure les champs (nom et adresse du client par exemple), éventuellement on demande un pied de groupe pour y inclure par exemple le total des commandes.
La section détail imprimera les données relatives aux commandes : date, numéro, total.
Ceci pour un cas simple... On peut bien sûr compliquer en ajoutant des groupes.
Par exemple, on peut ajouter un groupement "commande" pour afficher dans son en-tête la référence, la date de la commande, le total dans le pied de ce groupe, et en section détail les informations relatives aux lignes : référence produit, quantité commandée, total ligne, etc.
-
Globo
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 20 oct. 2008 18:27
Re: [SRB] Créer un rapport avec données de 2 requêtes
Bonjour,
c'est ce que je faisait jusqu'à maintenant. Mais un nouveau rapport me cause de petit souci. En effet je dois ressortir certains élément d'une table mais je dois trouver aussi le nombre de ligne contenu au total dans cette même table, histoire de sortir des stats. Donc dans une requête j'ai les données et dans l'autre je fais un groupage pour pouvoir compter le nbre de lignes dans cette tables.
Toutes mes tables sont sous MySQL et ça fonctionne nickel.
Donc si je comprend bien, il faut que je contourne la imitation de SRB et que je trouve l'astuce pour tout ressortir dans une même requête.
Merci pour ta réponse Pierre-Yves.
c'est ce que je faisait jusqu'à maintenant. Mais un nouveau rapport me cause de petit souci. En effet je dois ressortir certains élément d'une table mais je dois trouver aussi le nombre de ligne contenu au total dans cette même table, histoire de sortir des stats. Donc dans une requête j'ai les données et dans l'autre je fais un groupage pour pouvoir compter le nbre de lignes dans cette tables.
Toutes mes tables sont sous MySQL et ça fonctionne nickel.
Donc si je comprend bien, il faut que je contourne la imitation de SRB et que je trouve l'astuce pour tout ressortir dans une même requête.
Merci pour ta réponse Pierre-Yves.
Openoffice 3.1.1 sous Windows XP SP3
-
Pierre-Yves Samyn
- Grand Maître de l'OOffice

- Messages : 11276
- Inscription : 02 mai 2006 08:42
Re: [SRB] Créer un rapport avec données de 2 requêtes
Ben... il suffit de compter ce nombre de lignes dans le rapport lui-même...Globo a écrit :je dois ressortir certains élément d'une table mais je dois trouver aussi le nombre de ligne contenu au total dans cette même table
-
Globo
- Fraîchement OOthentifié
- Messages : 5
- Inscription : 20 oct. 2008 18:27
Re: [SRB] Créer un rapport avec données de 2 requêtes
Si c'était si simple.
En gros d'un coté je ressort toutes les lignes contenant un retard se rapportant à un transporteur grouper par transporteur.
Et ensuite pour affiner les stats sur le même rapport, je pensais sortir des % de retard par rapport à l'ensemble des transports de ce transporteur.
En fait, dans le rapport, je n'affiche qu'une sélection de lignes déjà pré disposées dans la requête. Le souci est peut-être là.
Peut-être faudrait-il que je scinde mon rapport en deux.
Une partie contenant les données et une autre faisant les calculs plus globaux pour les stats.
En gros d'un coté je ressort toutes les lignes contenant un retard se rapportant à un transporteur grouper par transporteur.
Et ensuite pour affiner les stats sur le même rapport, je pensais sortir des % de retard par rapport à l'ensemble des transports de ce transporteur.
En fait, dans le rapport, je n'affiche qu'une sélection de lignes déjà pré disposées dans la requête. Le souci est peut-être là.
Peut-être faudrait-il que je scinde mon rapport en deux.
Une partie contenant les données et une autre faisant les calculs plus globaux pour les stats.
Openoffice 3.1.1 sous Windows XP SP3