Je remets sur le tapis cette histoire de sous-rapport en erreur, comme=20
je l'ai fait le 1er mai dans le fil "Sous-rapport trop pudique".
J'obtiens le m=EAme r=E9sultat en m'y prenant comme suit :
1. Cr=E9ation d'une requ=EAte param=E9tr=E9e dans la base Northwind
USE [Northwind]
GO
/****** Objet : StoredProcedure [dbo].[ProductSel] Date de=20
g=E9n=E9ration du script : 06/08/2009 23:50:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[ProductSel] @ProductID int
AS
SELECT *
FROM Products
WHERE Products.ProductID =3D @ProductID
2. Cr=E9ation d'un projet ListeProduits de type Windows
3. Cr=E9ation (Add / New Item) d'un Dataset, DataSet1
Depuis le Server Explorer, je fais glisser la requ=EAte ProductSel vers l=
a=20
surface du concepteur de DataSet1. Cela cr=E9e une DataTable ProductSel, =
avec les TableAdapters Fill et GetData(@ProductId)
4. De m=EAme, cr=E9ation d'un deuxi=E8me Dataset, DataSet2
Depuis le Server Explorer, je fais glisser la table OrderDetails. Cela=20
cr=E9e une DataTable OrderDetails, avec les TableAdapters Fill et GetData=
().
5. Cr=E9ation (Add / New Item) d'un Report, RepOrderDetails.rdlc
Menu Report, Data Sources : DataSet2_Order_Details, Add to Report, OK.
6. Cr=E9ation (Add / New Item) d'un autre Report, RepProduct.rdlc
Menu Report, Data Sources : DataSet1_ProductSel, Add to Report, OK.
Menu Report, Report Parameters : name ProductID, Data type Integer, OK.
7. Form1, augmentation de la largeur, ajout d'un ReportViewer par=20
double-clic dans la Toolbox.
8. Sur le menu du "tag" du ReportViewer, s=E9lection de RepOrderDetails.r=
dlc
9. Elargissement du ReportViewer.
Ex=E9cution : page toute blanche.
10. Dans RepOrderDetails.rdlc, ajout d'une Table par double-clic dans la =
Toolbox.
11. Dans le Server Explorer, d=E9veloppement (par clic sur +) de la table=
=20
Order_Details
Gliss=E9 des champs OrderID et ProductID vers les deux premi=E8res cellul=
es=20
de la deuxi=E8me ligne (ligne d=E9tail). Oops, =E7a ne donne rien.
12. Ajout de source de donn=E9es.
Dans Data Sources, clic sur "Add New Data Source ...".
Set the application get data from : Database
Next
NorthwindConnectionString (Settings)
Next
Cocher la table Order_Details et la proc=E9dure stock=E9e ProductSel.
Finish.
13. Ajout de champs =E0 RepOrderDetails.rdlc
Depuis Data Sources, d=E9veloppement de DataSet2 / Order_Details.
Gliss=E9 de OrderID vers la premi=E8re cellule de la ligne d=E9tail. La=20
premi=E8re ligne fait appara=EEtre l'intitul=E9 Order ID, la deuxi=E8me=20
=3DFields!OrderID.Value.
Gliss=E9 de ProductID vers la deuxi=E8me cellule de la ligne d=E9tail. La=
=20
premi=E8re ligne fait appara=EEtre l'intitul=E9 Product ID, la deuxi=E8me=
=20
=3DFields!ProductID.Value
14. Cr=E9ation du sous-=E9tat
- s=E9lection de la troisi=E8me cellule de la ligne d=E9tail
- double-clic sur SubReport dans la Toolbox
- dans les propri=E9t=E9s,
ReportName : RepProduct
Parameters : clic sur le bouton =E0 droite,
Parameter Name : ProductID,
Parameter Value : =3DFields!ProductID.Value
OK.
Ex=E9cution : les champs OrderID et ProductID apparaissent correctement. =
En troisi=E8me colonne, sur chaque ligne l'intitul=E9 "Error : the subrep=
ort=20
could not be shown".
Il n'y a m=EAme pas eu besoin d'ins=E9rer des champs dans le sous-=E9tat,=
au=20
demeurant au mois de mai il y en avait et =E7a n'emp=EAchait pas l'erreur=
=2E
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gloops
Bon, peut-être qu'il va y avoir besoin de s'organiser. Alors j'ouvre un sous-fil pour donner les adresses de projets échantillons ("samples") et les observations faites avec.
Je mets ma config dans un autre message autrement ce sera illisible.
http://gotreportviewer.com/masterdetail/SubreportInList.zip Le projet échantillon fonctionne. Les données sont stockées dans un fichier xml. Si je crée des DataSets sur mes données dans SQL Server ou Access et que je les lie aux états, ça ne fonctionne plus, "SubReport could not be shown".
ça donne peut-être une piste de travail : convertir les données systématiquement en xml pour faire l'état à partir de la sérialis ation xml. Je m'attends à l'inconvénient que ça allonge le temps de trait ement car il faut le temps de sérialiser d'abord.
Bon, peut-être qu'il va y avoir besoin de s'organiser.
Alors j'ouvre un sous-fil pour donner les adresses de projets
échantillons ("samples") et les observations faites avec.
Je mets ma config dans un autre message autrement ce sera illisible.
http://gotreportviewer.com/masterdetail/SubreportInList.zip
Le projet échantillon fonctionne. Les données sont stockées dans un
fichier xml.
Si je crée des DataSets sur mes données dans SQL Server ou Access et que
je les lie aux états, ça ne fonctionne plus, "SubReport could not be shown".
ça donne peut-être une piste de travail : convertir les données
systématiquement en xml pour faire l'état à partir de la sérialis ation
xml. Je m'attends à l'inconvénient que ça allonge le temps de trait ement
car il faut le temps de sérialiser d'abord.
Bon, peut-être qu'il va y avoir besoin de s'organiser. Alors j'ouvre un sous-fil pour donner les adresses de projets échantillons ("samples") et les observations faites avec.
Je mets ma config dans un autre message autrement ce sera illisible.
http://gotreportviewer.com/masterdetail/SubreportInList.zip Le projet échantillon fonctionne. Les données sont stockées dans un fichier xml. Si je crée des DataSets sur mes données dans SQL Server ou Access et que je les lie aux états, ça ne fonctionne plus, "SubReport could not be shown".
ça donne peut-être une piste de travail : convertir les données systématiquement en xml pour faire l'état à partir de la sérialis ation xml. Je m'attends à l'inconvénient que ça allonge le temps de trait ement car il faut le temps de sérialiser d'abord.
Gloops
Voici ma config : Microsoft Visual Studio 2005 Version 8.0.50727.762 (SP.050727-7600) Microsoft .NET Framework Version 2.0.50727 SP1
Installed Edition: Professional
Microsoft Visual Basic 2005 77626-009-0005252-41150 Microsoft Visual Basic 2005
Microsoft Visual C# 2005 77626-009-0005252-41150 Microsoft Visual C# 2005
Microsoft Visual C++ 2005 77626-009-0005252-41150 Microsoft Visual C++ 2005
Microsoft Visual J# 2005 77626-009-0005252-41150 Microsoft Visual J# 2005
Microsoft Visual Web Developer 2005 77626-009-0005252-41150 Microsoft Visual Web Developer 2005
Microsoft Web Application Projects 2005 77626-009-0005252-41150 Microsoft Web Application Projects 2005 Version 8.0.50727.762
Crystal Reports AAC60-G0CSA4B-V7000AY Crystal Reports for Visual Studio 2005
Microsoft Visual Studio 2005 Professional Edition - ENU Service Pack 1 (KB926601) This service pack is for Microsoft Visual Studio 2005 Professional Edition - ENU. If you later install a more recent service pack, this service pack will be uninstalled automatically. For more information, visit http://support.microsoft.com/kb/926601
Security Update for Microsoft Visual Studio 2005 Professional Edition - ENU (KB937061) This Security Update is for Microsoft Visual Studio 2005 Professional Edition - ENU. If you later install a more recent service pack, this Security Update will be uninstalled automatically. For more information, visit http://support.microsoft.com/kb/937061
Voici ma config :
Microsoft Visual Studio 2005
Version 8.0.50727.762 (SP.050727-7600)
Microsoft .NET Framework
Version 2.0.50727 SP1
Installed Edition: Professional
Microsoft Visual Basic 2005 77626-009-0005252-41150
Microsoft Visual Basic 2005
Microsoft Visual C# 2005 77626-009-0005252-41150
Microsoft Visual C# 2005
Microsoft Visual C++ 2005 77626-009-0005252-41150
Microsoft Visual C++ 2005
Microsoft Visual J# 2005 77626-009-0005252-41150
Microsoft Visual J# 2005
Microsoft Visual Web Developer 2005 77626-009-0005252-41150
Microsoft Visual Web Developer 2005
Microsoft Web Application Projects 2005 77626-009-0005252-41150
Microsoft Web Application Projects 2005
Version 8.0.50727.762
Crystal Reports AAC60-G0CSA4B-V7000AY
Crystal Reports for Visual Studio 2005
Microsoft Visual Studio 2005 Professional Edition - ENU Service Pack 1
(KB926601)
This service pack is for Microsoft Visual Studio 2005 Professional
Edition - ENU.
If you later install a more recent service pack, this service pack will
be uninstalled automatically.
For more information, visit http://support.microsoft.com/kb/926601
Security Update for Microsoft Visual Studio 2005 Professional Edition -
ENU (KB937061)
This Security Update is for Microsoft Visual Studio 2005 Professional
Edition - ENU.
If you later install a more recent service pack, this Security Update
will be uninstalled automatically.
For more information, visit http://support.microsoft.com/kb/937061
Voici ma config : Microsoft Visual Studio 2005 Version 8.0.50727.762 (SP.050727-7600) Microsoft .NET Framework Version 2.0.50727 SP1
Installed Edition: Professional
Microsoft Visual Basic 2005 77626-009-0005252-41150 Microsoft Visual Basic 2005
Microsoft Visual C# 2005 77626-009-0005252-41150 Microsoft Visual C# 2005
Microsoft Visual C++ 2005 77626-009-0005252-41150 Microsoft Visual C++ 2005
Microsoft Visual J# 2005 77626-009-0005252-41150 Microsoft Visual J# 2005
Microsoft Visual Web Developer 2005 77626-009-0005252-41150 Microsoft Visual Web Developer 2005
Microsoft Web Application Projects 2005 77626-009-0005252-41150 Microsoft Web Application Projects 2005 Version 8.0.50727.762
Crystal Reports AAC60-G0CSA4B-V7000AY Crystal Reports for Visual Studio 2005
Microsoft Visual Studio 2005 Professional Edition - ENU Service Pack 1 (KB926601) This service pack is for Microsoft Visual Studio 2005 Professional Edition - ENU. If you later install a more recent service pack, this service pack will be uninstalled automatically. For more information, visit http://support.microsoft.com/kb/926601
Security Update for Microsoft Visual Studio 2005 Professional Edition - ENU (KB937061) This Security Update is for Microsoft Visual Studio 2005 Professional Edition - ENU. If you later install a more recent service pack, this Security Update will be uninstalled automatically. For more information, visit http://support.microsoft.com/kb/937061
Gloops
http://gotreportviewer.com/definedata/index.html
Defining Report Data Sources
Dans l'avant-dernier alinéa je lis ceci :
You will also open this dialog to find out the names of report data sources. To supply data for subreports or drillthrough reports (in the corresponding event handlers) you'll need to know the names of the report datasources. (For the main report, you got away because Visual Studio automatically generated code to supply data.)
J'ai déjà lu quelque part dans un newsgroup qu'il fallait écrire du code pour affecter les données dans un sous-état, et les échantillons es sayés n'y ayant pas recours à ce qu'il m'a semblé j'ai laissé courir.
Quelque chose me dit que le jour où quelqu'un aura pu essayer les manip s que je décris en tête de fil, ça permettra déjà d'y voir plus c lair. Surtout que par la même occasion ça peut lui inspirer des commentaire s.
_____________________________________ Gloops a écrit, le 09/06/2009 00:53 :
Bonjour tout le monde,
Je remets sur le tapis cette histoire de sous-rapport en erreur, comme je l'ai fait le 1er mai dans le fil "Sous-rapport trop pudique".
J'obtiens le même résultat en m'y prenant comme suit :
1. Création d'une requête paramétrée dans la base Northwind
USE [Northwind] GO /****** Objet : StoredProcedure [dbo].[ProductSel] Date de génération du script : 06/08/2009 23:50:11 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[ProductSel] @ProductID int AS SELECT * FROM Products WHERE Products.ProductID = @ProductID
2. Création d'un projet ListeProduits de type Windows
3. Création (Add / New Item) d'un Dataset, DataSet1
Depuis le Server Explorer, je fais glisser la requête ProductSel vers la surface du concepteur de DataSet1. Cela crée une DataTable ProductSel , avec les TableAdapters Fill et GetData(@ProductId)
4. De même, création d'un deuxième Dataset, DataSet2
Depuis le Server Explorer, je fais glisser la table OrderDetails. Cela crée une DataTable OrderDetails, avec les TableAdapters Fill et GetDa ta().
5. Création (Add / New Item) d'un Report, RepOrderDetails.rdlc
Menu Report, Data Sources : DataSet2_Order_Details, Add to Report, OK.
6. Création (Add / New Item) d'un autre Report, RepProduct.rdlc
Menu Report, Data Sources : DataSet1_ProductSel, Add to Report, OK. Menu Report, Report Parameters : name ProductID, Data type Integer, OK.
7. Form1, augmentation de la largeur, ajout d'un ReportViewer par double-clic dans la Toolbox.
8. Sur le menu du "tag" du ReportViewer, sélection de RepOrderDetails .rdlc
9. Elargissement du ReportViewer.
Exécution : page toute blanche.
10. Dans RepOrderDetails.rdlc, ajout d'une Table par double-clic dans l a Toolbox.
11. Dans le Server Explorer, développement (par clic sur +) de la tab le Order_Details
Glissé des champs OrderID et ProductID vers les deux premières cell ules de la deuxième ligne (ligne détail). Oops, ça ne donne rien.
12. Ajout de source de données. Dans Data Sources, clic sur "Add New Data Source ...". Set the application get data from : Database
Next NorthwindConnectionString (Settings)
Next
Cocher la table Order_Details et la procédure stockée ProductSel.
Finish.
13. Ajout de champs à RepOrderDetails.rdlc
Depuis Data Sources, développement de DataSet2 / Order_Details. Glissé de OrderID vers la première cellule de la ligne détail. La première ligne fait apparaître l'intitulé Order ID, la deuxième =Fields!OrderID.Value. Glissé de ProductID vers la deuxième cellule de la ligne détail. La première ligne fait apparaître l'intitulé Product ID, la deuxiè me =Fields!ProductID.Value
14. Création du sous-état - sélection de la troisième cellule de la ligne détail - double-clic sur SubReport dans la Toolbox - dans les propriétés, ReportName : RepProduct Parameters : clic sur le bouton à droite, Parameter Name : ProductID, Parameter Value : =Fields!ProductID.Value OK.
Exécution : les champs OrderID et ProductID apparaissent correctement . En troisième colonne, sur chaque ligne l'intitulé "Error : the subr eport could not be shown".
Il n'y a même pas eu besoin d'insérer des champs dans le sous-éta t, au demeurant au mois de mai il y en avait et ça n'empêchait pas l'erre ur.
Y a-t-il quelque chose que j'ai fait de travers ?
http://gotreportviewer.com/definedata/index.html
Defining Report Data Sources
Dans l'avant-dernier alinéa je lis ceci :
You will also open this dialog to find out the names of report data
sources. To supply data for subreports or drillthrough reports (in the
corresponding event handlers) you'll need to know the names of the
report datasources. (For the main report, you got away because Visual
Studio automatically generated code to supply data.)
J'ai déjà lu quelque part dans un newsgroup qu'il fallait écrire du code
pour affecter les données dans un sous-état, et les échantillons es sayés
n'y ayant pas recours à ce qu'il m'a semblé j'ai laissé courir.
Quelque chose me dit que le jour où quelqu'un aura pu essayer les manip s
que je décris en tête de fil, ça permettra déjà d'y voir plus c lair.
Surtout que par la même occasion ça peut lui inspirer des commentaire s.
_____________________________________
Gloops a écrit, le 09/06/2009 00:53 :
Bonjour tout le monde,
Je remets sur le tapis cette histoire de sous-rapport en erreur, comme
je l'ai fait le 1er mai dans le fil "Sous-rapport trop pudique".
J'obtiens le même résultat en m'y prenant comme suit :
1. Création d'une requête paramétrée dans la base Northwind
USE [Northwind]
GO
/****** Objet : StoredProcedure [dbo].[ProductSel] Date de
génération du script : 06/08/2009 23:50:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[ProductSel] @ProductID int
AS
SELECT *
FROM Products
WHERE Products.ProductID = @ProductID
2. Création d'un projet ListeProduits de type Windows
3. Création (Add / New Item) d'un Dataset, DataSet1
Depuis le Server Explorer, je fais glisser la requête ProductSel vers la
surface du concepteur de DataSet1. Cela crée une DataTable ProductSel ,
avec les TableAdapters Fill et GetData(@ProductId)
4. De même, création d'un deuxième Dataset, DataSet2
Depuis le Server Explorer, je fais glisser la table OrderDetails. Cela
crée une DataTable OrderDetails, avec les TableAdapters Fill et GetDa ta().
5. Création (Add / New Item) d'un Report, RepOrderDetails.rdlc
Menu Report, Data Sources : DataSet2_Order_Details, Add to Report, OK.
6. Création (Add / New Item) d'un autre Report, RepProduct.rdlc
Menu Report, Data Sources : DataSet1_ProductSel, Add to Report, OK.
Menu Report, Report Parameters : name ProductID, Data type Integer, OK.
7. Form1, augmentation de la largeur, ajout d'un ReportViewer par
double-clic dans la Toolbox.
8. Sur le menu du "tag" du ReportViewer, sélection de RepOrderDetails .rdlc
9. Elargissement du ReportViewer.
Exécution : page toute blanche.
10. Dans RepOrderDetails.rdlc, ajout d'une Table par double-clic dans l a
Toolbox.
11. Dans le Server Explorer, développement (par clic sur +) de la tab le
Order_Details
Glissé des champs OrderID et ProductID vers les deux premières cell ules
de la deuxième ligne (ligne détail). Oops, ça ne donne rien.
12. Ajout de source de données.
Dans Data Sources, clic sur "Add New Data Source ...".
Set the application get data from : Database
Next
NorthwindConnectionString (Settings)
Next
Cocher la table Order_Details et la procédure stockée ProductSel.
Finish.
13. Ajout de champs à RepOrderDetails.rdlc
Depuis Data Sources, développement de DataSet2 / Order_Details.
Glissé de OrderID vers la première cellule de la ligne détail. La
première ligne fait apparaître l'intitulé Order ID, la deuxième
=Fields!OrderID.Value.
Glissé de ProductID vers la deuxième cellule de la ligne détail. La
première ligne fait apparaître l'intitulé Product ID, la deuxiè me
=Fields!ProductID.Value
14. Création du sous-état
- sélection de la troisième cellule de la ligne détail
- double-clic sur SubReport dans la Toolbox
- dans les propriétés,
ReportName : RepProduct
Parameters : clic sur le bouton à droite,
Parameter Name : ProductID,
Parameter Value : =Fields!ProductID.Value
OK.
Exécution : les champs OrderID et ProductID apparaissent correctement .
En troisième colonne, sur chaque ligne l'intitulé "Error : the subr eport
could not be shown".
Il n'y a même pas eu besoin d'insérer des champs dans le sous-éta t, au
demeurant au mois de mai il y en avait et ça n'empêchait pas l'erre ur.
You will also open this dialog to find out the names of report data sources. To supply data for subreports or drillthrough reports (in the corresponding event handlers) you'll need to know the names of the report datasources. (For the main report, you got away because Visual Studio automatically generated code to supply data.)
J'ai déjà lu quelque part dans un newsgroup qu'il fallait écrire du code pour affecter les données dans un sous-état, et les échantillons es sayés n'y ayant pas recours à ce qu'il m'a semblé j'ai laissé courir.
Quelque chose me dit que le jour où quelqu'un aura pu essayer les manip s que je décris en tête de fil, ça permettra déjà d'y voir plus c lair. Surtout que par la même occasion ça peut lui inspirer des commentaire s.
_____________________________________ Gloops a écrit, le 09/06/2009 00:53 :
Bonjour tout le monde,
Je remets sur le tapis cette histoire de sous-rapport en erreur, comme je l'ai fait le 1er mai dans le fil "Sous-rapport trop pudique".
J'obtiens le même résultat en m'y prenant comme suit :
1. Création d'une requête paramétrée dans la base Northwind
USE [Northwind] GO /****** Objet : StoredProcedure [dbo].[ProductSel] Date de génération du script : 06/08/2009 23:50:11 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[ProductSel] @ProductID int AS SELECT * FROM Products WHERE Products.ProductID = @ProductID
2. Création d'un projet ListeProduits de type Windows
3. Création (Add / New Item) d'un Dataset, DataSet1
Depuis le Server Explorer, je fais glisser la requête ProductSel vers la surface du concepteur de DataSet1. Cela crée une DataTable ProductSel , avec les TableAdapters Fill et GetData(@ProductId)
4. De même, création d'un deuxième Dataset, DataSet2
Depuis le Server Explorer, je fais glisser la table OrderDetails. Cela crée une DataTable OrderDetails, avec les TableAdapters Fill et GetDa ta().
5. Création (Add / New Item) d'un Report, RepOrderDetails.rdlc
Menu Report, Data Sources : DataSet2_Order_Details, Add to Report, OK.
6. Création (Add / New Item) d'un autre Report, RepProduct.rdlc
Menu Report, Data Sources : DataSet1_ProductSel, Add to Report, OK. Menu Report, Report Parameters : name ProductID, Data type Integer, OK.
7. Form1, augmentation de la largeur, ajout d'un ReportViewer par double-clic dans la Toolbox.
8. Sur le menu du "tag" du ReportViewer, sélection de RepOrderDetails .rdlc
9. Elargissement du ReportViewer.
Exécution : page toute blanche.
10. Dans RepOrderDetails.rdlc, ajout d'une Table par double-clic dans l a Toolbox.
11. Dans le Server Explorer, développement (par clic sur +) de la tab le Order_Details
Glissé des champs OrderID et ProductID vers les deux premières cell ules de la deuxième ligne (ligne détail). Oops, ça ne donne rien.
12. Ajout de source de données. Dans Data Sources, clic sur "Add New Data Source ...". Set the application get data from : Database
Next NorthwindConnectionString (Settings)
Next
Cocher la table Order_Details et la procédure stockée ProductSel.
Finish.
13. Ajout de champs à RepOrderDetails.rdlc
Depuis Data Sources, développement de DataSet2 / Order_Details. Glissé de OrderID vers la première cellule de la ligne détail. La première ligne fait apparaître l'intitulé Order ID, la deuxième =Fields!OrderID.Value. Glissé de ProductID vers la deuxième cellule de la ligne détail. La première ligne fait apparaître l'intitulé Product ID, la deuxiè me =Fields!ProductID.Value
14. Création du sous-état - sélection de la troisième cellule de la ligne détail - double-clic sur SubReport dans la Toolbox - dans les propriétés, ReportName : RepProduct Parameters : clic sur le bouton à droite, Parameter Name : ProductID, Parameter Value : =Fields!ProductID.Value OK.
Exécution : les champs OrderID et ProductID apparaissent correctement . En troisième colonne, sur chaque ligne l'intitulé "Error : the subr eport could not be shown".
Il n'y a même pas eu besoin d'insérer des champs dans le sous-éta t, au demeurant au mois de mai il y en avait et ça n'empêchait pas l'erre ur.