Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Rave
Rave Forum d'entraide sur Rave Reports
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 09/11/2011, 11h50   #1
Membre confirmé
 
Avatar de od.dev
 
Homme Numéro VI Le Village
Analyste-programmeur Delphi
Inscription : décembre 2003
Messages : 470
Détails du profil
Informations personnelles :
Nom : Homme Numéro VI Le Village
Âge : 48
Localisation : France

Informations professionnelles :
Activité : Analyste-programmeur Delphi

Informations forums :
Inscription : décembre 2003
Messages : 470
Points : 248
Points : 248
Par défaut Trouver un composant dans une page

Bonjour à tous ! C'est moi.

Un petit soucis avec un composant TRaveSection,
(en tout cas le composant "Section component" que l'on trouve dans l'onglet Standard)
je le créé à la conception puis, dans mon code delphi, je fais :
Code :
1
2
3
 
MaPage    := RvProject1.ProjMan.FindRaveComponent('Report1.MaPage1', nil) AS TRavePage;
MaSection := RvProject1.ProjMan.FindRaveComponent('Report1.Section1', nil) AS TRaveSection;
Il trouve bien MaPage, mais pas MaSection.
J'ai bien essayé :
Code :
1
2
 
MaSection  := RvProject1.ProjMan.FindRaveComponent('Report1.MaPage1.Section1', nil) AS TRaveSection;
Pas mieux.

Quelqu'un verrait-il ce que je fais mal ?

Merci d'avance.
od.dev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2011, 07h36   #2
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 621
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 621
Points : 4 526
Points : 4 526
ta section se trouve dans la page ?

donc
Code :
1
2
MaPage    := RvProject1.ProjMan.FindRaveComponent('Report1.MaPage1', nil) AS TRavePage;
MaSection := RvProject1.ProjMan.FindRaveComponent('Section1', mapage) AS TRaveSection;
enfin je dis ça à la volée.

PS . si tu arrives a maitriser les sections , je suis preneur d'explications , je n'ai jamais pris la peine de me pencher dessus . Pour les miroirs aussi d'ailleurs ....
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2011, 10h54   #3
Membre confirmé
 
Avatar de od.dev
 
Homme Numéro VI Le Village
Analyste-programmeur Delphi
Inscription : décembre 2003
Messages : 470
Détails du profil
Informations personnelles :
Nom : Homme Numéro VI Le Village
Âge : 48
Localisation : France

Informations professionnelles :
Activité : Analyste-programmeur Delphi

Informations forums :
Inscription : décembre 2003
Messages : 470
Points : 248
Points : 248
Bonjour Sergio,

Pour ce qui est de la maîtrise des sections... En fait, je créé un report à la conception, avec un entête,
le reste du report est un tableau croisé de données issues de deux sources de données (Il n'existe pas de composant "tableau croisé" Rave, contrairement à Crystal report).
Ce qui m'a donc obligé à découvrir les joies du développement dynamique avec Rave, et j'en suis maintenant ravi.

Problématique principale :
Le Report peut donc s'étaler sur plusieurs pages verticalement,
mais aussi sur plusieurs pages horizontalement .
Il me fallait donc créer des pages supplémentaires dynamiquement, et :

Autre problématique :
Les supprimer après l'impression pour pouvoir les recréer si le client demande une 2e impression.
Pour ce qui est des pages, j'ai déjà un peu peiné pour trouver une boucle qui les supprime toutes sauf la première,
mais sur la première il me fallait également supprimer tout les composants créés dynamiquement sans toucher à ceux de l'entête.
D'où l'utilisation d'une section (que j'ai finalement créée dynamiquement aussi, plutôt qu'à la conception, et de la chercher à l'exécution) sur laquelle je fais simplement un nettoyage de tous ses composants. Et cela fonctionne bien.
Tu me diras, pourquoi ne pas tout créer dynamiquement ?
A quoi je répondrai : j'en sais rien.
A l'origine, peut-être un peu par paresse...
Dès que mon code est présentable je le posterai ici.
La seule chose que je n'ai pas encore testé, c'est le dépassement de feuille à droite (rien que ça ), mais cela ne saurait tarder, et je suis assez confiant.
od.dev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2011, 11h02   #4
Membre confirmé
 
Avatar de od.dev
 
Homme Numéro VI Le Village
Analyste-programmeur Delphi
Inscription : décembre 2003
Messages : 470
Détails du profil
Informations personnelles :
Nom : Homme Numéro VI Le Village
Âge : 48
Localisation : France

Informations professionnelles :
Activité : Analyste-programmeur Delphi

Informations forums :
Inscription : décembre 2003
Messages : 470
Points : 248
Points : 248
Du coup j'ai oublié de te dire que :
Code :
1
2
 
RvProject1.ProjMan.FindRaveComponent('Section1', MaPage) AS TRaveSection;
fonctionne très bien.
je garde la création dynamique, qui me permet de supprimer directement la section plutôt que chacun de ses composants (suis-je bête ), mais je note la syntaxe dans mon calepin.

Merci encore.
od.dev 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 10h31.


 
 
 
 
Partenaires

Hébergement Web