Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports
Crystal Reports Forum d'entraide sur Crystal Reports. Avant de poster --> FAQ Crystal, Tutoriels Crystal
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/06/2007, 12h19   #1
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
Par défaut [CR XI]Sous rapports : perf et fonctionnement

Bonjour,
j'aimerai comprendre comment d'après vous fonctionnent les sous rapports.
Je m'explique : j'ai une état avec mettons des clients et leurs commandes.
Je calcule un rang en SQL. cela me permet d'avoir le rang cohérent gérant même les ex-aequos alors que le mainreport est classé par ordre alphabétique.

Seul petit hic, les requêtes calculant les rangs sont un chouille longue, et sont d'autant plus long qu'il y a de clients à traiter.
or, si j'intégre ce calcul avec la commande principale qui renvoit le détail des commandes...ben ça ne s'arrange. j'imagine que tout le monde voit pourquoi (mais je peux expliquer ).

donc je me suis dit qu'a cela ne tienne, je vais faire un sous rapport.
Donc dans mon sous rapport, je fais mon calcul de rang et j'obtiens ce qu'il me faut. Mais les perfs ne sont pas au rendez-vous.
Ce qui m'étonne, c'est que j'ai l'impression qu'à chaque page d'un client, il me lance l'intégralité de la commande du sous-rapport puis filtre avec les champs de liaison.

n'est-il pas possible de lancer la commande du sous-report une bonne fois..puis de faire le lien à chaque page dans rafraichir?

dans la même veine, n'est il pas possible de disposer d 'un recordset dynamique généré dans Crytal?

j'espère que j'ai été clair.

merci d'avance

Simon
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2007, 11h23   #2
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
y'a que moi qui m'interroge? ou tout le monde s'en f...?
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2007, 11h57   #3
Membre Expert
 
Avatar de lazarel
 
Homme
Consultant informatique
Inscription : mai 2007
Messages : 893
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultant informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : mai 2007
Messages : 893
Points : 1 360
Points : 1 360
Bonjour,


Tu travaille sur quelle base? Peux tu donner tes requêtes sql svp ? Tu utilises des commandes sous CRXi ?

Cordialement Lazarel
lazarel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2007, 12h12   #4
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
euh..je vois pas le rapport...
c'est de la base postgresql. mes requêtes tournent très bien en stand-alone.

simplement, j'ai l'impression que la requête d'un sous report est lancé à chaque fois que celui ci est affiché. donc dans mon cas, à chaque page

oui, des commandes ds CR XI
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/06/2007, 23h08   #5
Membre expérimenté
 
Avatar de kikidrome
 
Inscription : décembre 2004
Messages : 841
Détails du profil
Informations personnelles :
Localisation : France, Drôme (Rhône Alpes)

Informations forums :
Inscription : décembre 2004
Messages : 841
Points : 563
Points : 563
Citation:
Envoyé par say
y'a que moi qui m'interroge? ou tout le monde s'en f...?
non non, je ne m'en fous pas, je suis le débat de loin car je n'ai pas de réponse... j'ai déjà constaté des pb de performances avec les sous états mais sans en comprendre les raisons..
__________________
Les paysages sont plus beaux quand on transpire.
Olaf Candau
kikidrome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2008, 11h04   #6
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
bonjour, bonjour,

petit retour d'expérience...
étant très pénalisé par le problème, j'ai continué à creuser.
j'ai trouvé très récemment une première solution.

Je rappelles : je travailles dans un contexte de lien entre le rapport et le sous-rapport (je précises car cela peut ne pas être le cas). Or dans un rapport, il semble que les données du sous-rapport sont exécutés à chaque nouvel affichage.

ex: vous avez une page par client avec les commandes du client en sous-rapport.
le sous rapport charge tous les commandes des clients puis est filtré en fonction du lien avec le rapport principal.
C'est là que ce situe le problème : à chaque page, l'intégralité des commandes sans distinction est chargé. ce que je peux comprendre, il filtre après...bon...admettons.
[encore une fois, ce ne sont que des conclusions après des tests empiriques....cela n'engage que moi]

par ailleurs, je précise que je travailles uniquement avec des commandes CR, pas directement avec les tables de ma base avec des requêtes que je construit au préalable.

Donc, en fait, lorsque l'on fait un lien entre main et subreport, un nouveau paramètre est disponible dans les champs paramètres du sous report : kkchose dans le genre : Pm.commande.id (où commande.id est le champ du rapport principal sur lequel le lien est effectué)
[vous suivez toujours?]
En fait, il est possible d'utiliser ce paramètre dans la commande en respectant le nom exact. Ainsi, au moment où le sous rapport est exécuté...la requete source tient compte d'un paramètre passé par le sous-état.

donc sur nos clients, chaque page ne lance l'interrogation des commandes du client courant uniquement.

Bon je sais pas si c'est très clair...
si vous avez des questions, vous savez où me trouver.

A+
Simon
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h59.


 
 
 
 
Partenaires

Hébergement Web