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 07/09/2006, 16h00   #1
Membre du Club
 
Inscription : juillet 2006
Messages : 79
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 79
Points : 43
Points : 43
Par défaut [cr 9] Décalage avec valeurs récupérées par variables de type shared

Bonjour à tous !

J'ai épluché tous les messages que je pouvais trouver sur les variables shared mais je n'ai pas réussi à resoudre mon problème :

J'ai un état principal avec un premier groupe (liste de cartes).
J'ai ensuite un second groupe avec d'autres informations
En pied du 1er groupe (cartes), j'ai un sous état qui me calcule un champ de type résumé. Cela donne quelque chose comme ca :

Citation:
Carte A :
Infos_1 Valeur_1
Infos_2 Valeur_2
...
Infos_sous_etat valeur_calculée

Je voudrais pouvoir recuperer la valeur calculée pour en faire un pourcentage par rapport à ma somme valeur1+valeur2, par type de carte.

La somme... c'est bon...
La formule de pourcentage...c'est pas vraiment un problème non plus.
Recuperer la valeur... c'est le hic !

Dans mon sous état j'ai donc créé le champ de formule suivant :
(celui ci se trouve en pied de page du sous état).

Code :
1
2
whileprintingrecords;
shared numbervar rebut := (Count ({champ}))
Dans le pied de groupe 1 de mon état principal, j'ai cette formule :

Code :
1
2
3
whileprintingrecords;
shared numbervar rebut;
rebut
Et là c'est le drame. J'ai l'impression que l'état va d'abord lire la formule de l'état principal, créer la variable, et commencer l'affectation avec un décalage d'un groupe du coup...

Ce qui me donne en résultat par exemple :

Citation:
Carte A
Valeur du sous état : 3
Valeur retournée : 0

Carte B
Valeur du sous état : 9
Valeur retournée : 3

Carte C
Valeur du sous état : 5
Valeur retournée : 9
Comment récuperer ma valeur au bon moment ?
Maltus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2006, 10h58   #2
Membre confirmé
 
Inscription : mai 2002
Messages : 246
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 246
Points : 256
Points : 256
Envoyer un message via MSN à Machuet
Sans voir l'état c'est assez difficile, mais essaie d'employer la fonction evaluateafter()
Machuet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2006, 11h04   #3
Membre du Club
 
Inscription : juillet 2006
Messages : 79
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 79
Points : 43
Points : 43
Hello.

Le problème est, que puis-je évaluer après quoi ?

Dans le sous état ma formule me retourne bien la même valeur que le champ résumé donc à ce niveau la je pense que c'est bon.

Dans l'état principal je ne vois pas trop il faudrait que je puisse dire à la formule de ne s'afficher qu'après que le sous rapport est fait son calcul, mais je ne peux pas faire un evaluateafter(sous_rapport) il me semble

De plus, il me semble avoir lu (mais là il faudra confirmer), que la déclaration d'une variable de type shared doit d'abord se faire dans le rapport principal. Enfin j'ai vu beaucoup de cas ou il était plus simple de passer un résultat calculé par une variable shared d'un état vers un sous état que dans l'autre sens. Malheureusement c'est de l'inverse dont j'ai besoin
Maltus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h33.


 
 
 
 
Partenaires

Hébergement Web