|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Bonjour,
J'ai la requête SQL suivante Code :
1 - je crée une table dérivée avec mon code tel qu'il est (bien sûr en trasformant les '&X' en @Prompt). 2 - Je crée une table dérivée avec le code sans le group by et ensuite je fais le dans mon rapport. Ma question est la suivante : laquelle de deux solutions est meilleure. Si c'est la solution 2 (Personnellement je la trouve plus flexible), comment puis je faire un . Ou plutôt comment puis je mettre en place cette deuxième solution. Merci d'avance |
||
|
|
00
|
|
|
#2 | ||||
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : juin 2007 Messages : 480 ![]() |
Bonjour,
La première solution va très bien si c'est la seule utilisation des données dans l'univers. Pour une solution plus flexible, tu peux
|
||||
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Re-Bonjour,
Justement comment et où dois je créer mes indicateurs ? dans l'univers ou au niveau du rapport. Dans les deux cas, quelles sont les fonctions BO que je peux/dois utiliser. Merci |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : juin 2007 Messages : 480 ![]() |
Re-bonnjour,
Toutes les actions que je décris sont à faire dans l'univers. Pour créer un indicateur : Insertion / Objet, dans l'onglet définition renseigner le champ "Select" avec la formule, dans l'onglet Propriétés choisir le type "Indicateur" Les objets dimensions son à créer de la même manière, ou plus simplement en cliquant sur un champ de la table dérivée et en le tirant dans la partie gauche. |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Re-bonjour,
Merci pour ton aide mais je n'y arrive toujours pas. En fait pour les objets dimension je pense que c'est bon. Par contre quand tu me dis que pour créer l'indicateur je dois taper ma formule dans le champs Select mais c'est quoi la formule ici ? est ce tout simplement le count ? comment puis je lui indique que le group by concerne les trois colonne hiXXX? Désolé de t'avoir encore embêter Merci |
|
|
00
|
|
|
#6 | ||||
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : juin 2007 Messages : 480 ![]() |
Re-bonjour,
Ce qu'il faut mettre dans le champ Select est bien ce que tu as tapé. Le group by est généré automatiquement par BO au moment où on construit la requête. Par exemple, si dans ton rapport tu sélectionnes les objets hi_num01 et nb_ut_actif, BO va générer la requête suivante (approximativement, je l'écris à la main)): Code :
Code :
|
||||
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Merci c'est beaucoup plus clair mais ça risque de ne pas correspondre à ce que je veux mais n'hésite pas à me corrigé.
Est ce que pour afficher mes deux count dans le rapport je suis obligé d'affiche les hi_X. En effet, dans certain rapports j'ai besoin du nombre total (càd count(*) ou count(disticnt)) mais pas des libellés. Cordialement |
|
|
00
|
|
|
#8 | ||||
|
Membre Expert
![]() Ingénieur développement logiciels Inscription : juin 2007 Messages : 480 ![]() |
Re-bonjour,
Pas de problème pour prendre les indicateurs sans les dimensions, le count() se fera pour tous les enregistrements sans group by... C'est toute la force de BO, il fait automatiquement les aggrégations. Par exemple, tu peux faire une requête avec hi_num01 et hi_num02 et les deux indicateurs. Admettons que le résultat soit le suivant : Code :
|
||||
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Merci beaucoup pour tes efforts.
C'est beaucoup plus clair et je suis en train d'essayer de le mettre en place car je ne connais pas BO et pour créer le rapport je mets du temps. Une personne m'a dit que je dois passer par la création d'une variable qui sera la concaténation des champs de mon group by. est ce cela nécessaire ? Pour le moment je ne sais pas comment mais d'abord j'aimerais savoir si je suis sur le bon chemin |
|
|
00
|
|
|
#10 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Merci beaucoup.
Franchement c'est très gentil de ta part. Grâce à vous j'arrive à avancer sans que j'aie une formation BO. Il me reste quand même des problème de mise en page et d'insertion d'un tableau dans un autre mais je pense qu'il te sera difficile de m'aider sur ces aspects Merci encore infiniment |
|
|
00
|
|
|
#11 |
|
Futur Membre du Club
![]() Inscription : juin 2006 Messages : 100 ![]() |
Bonjour,
Je complète la réponse sur cette question. En fait, j'ai trouvé une notion pas mal du tout dans BO qui permet de faire un équivalent du group by d'une manière très simple. Il s'agit d'appliquer une rupture sur la colonne sur laquelle on veut faire le group by (la rupture se fait au niveau du rapport dans InfoView). Avec le concept "rupture", j'ai pu réaliser ce que je veux. En fait, une fois que la rupture est créée, on peut utiliser diverses fonctions proposées par BO (Nombre, Somme ....) pour effectuer le calcul. Merci pour votre aide |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com