Utilisation d'un etat crystal report avec des subreport

Résolu
Paxx
Messages postés
28
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
4 décembre 2008
- 14 avril 2008 à 17:11
lailaElk
Messages postés
1
Date d'inscription
jeudi 22 janvier 2015
Statut
Membre
Dernière intervention
18 janvier 2017
- 18 janv. 2017 à 13:30
Bonjour,

J'ai un soucis avec crystal report intégré à visual Studio 2005 (avec du code VB en web).
Lorsque je charge un etat simple par du code en passant par un dataset fortement typé, là, pas de problème, tout s'affiche!
Seulement, lorsque je veux charger un rapport contenant un sous rapport en apelant le rapport global, j'ai droit a un message d'erreur "the report has no tables". Ce qui me parais logique car par le code, j'envoi les informations du dataset dans le rapport global qui n'a pas de quoi les traiter au lieu de les envoyer au sous rapport.
Pour une meilleure compréhension, je dois fournir sur une page un ensemble de tableau. J'ai donc conçu ces tableaux dans différents rapports et voudrai les afficher dans un seul en tant que sous rapports.
En gros ma question est : Comment , par le code, réussir à afficher ces différents tableaux dans un seul rapport.

J'ai essayé ceci :
        subreport.SetDataSource(dstSynthese) // chargement du sous rapport avec les infos du dataset (dstSynthese)
        ReportViewer.ReportSource = report //puis affichage du rapport contenant le sous rapport
Mais dans ce cas la, je tombe sur une page où il m'est demandé un login et password que je ne connais pas.

Quelqu'un verrais-t-il une solution a mon problème?

12 réponses

Paxx
Messages postés
28
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
4 décembre 2008
1
15 avril 2008 à 11:35
merci pour vos réponses :p

Bon, pour ceux qui seraient confrontés au même soucis, j'ai trouvé la solution, il faut mettre le code suivant :
Dim report As New ReportDocument
            report.Load("C:\Inetpub\wwwroot\RPT\rptP04M00_Rendement.rpt")
            report.OpenSubreport("rptP04S06_TOTAL.rpt")
            report.Subreports.Item(0).SetDataSource(dstSynthese)
            report.OpenSubreport("rptP04S05_AGENT.rpt")
            report.Subreports.Item(1).SetDataSource(dstSynthese)
            report.OpenSubreport("rptP04S04_DS.rpt")
            report.Subreports.Item(2).SetDataSource(dstSynthese)
            ReportViewer.ReportSource = report

Et non pas charger d'abord le sous rapport comme je le faisais avant!
1
lailaElk
Messages postés
1
Date d'inscription
jeudi 22 janvier 2015
Statut
Membre
Dernière intervention
18 janvier 2017

18 janv. 2017 à 13:30
merciii infiniment
0