Bonjour,
Je fais de l'ASP .NET / C# sur VS2003.
J'ai rencontré un problème qui me bloque depuis quelques heures déjà ...
J'ai construit deux états crystal report : J'arrive à les visualiser séparemment via des CrystalReportViewers sans problème et aussi à les exporter.
Cependant, quand je construis un nouvel état vide, que j'y insère ces deux états (l'un en en-tête et l'autre dans la section détails), alors là je n'arrive ni à visualiser cet état final ni à l'exporter.
Voici mon (pseudo)code :
Code C# :
maCollection sourceCR = new maCollection ();
sourceCR = … // Remplissage de soucreCR depuis la base de données
// premier sous-état :
DataTable dt1= new DataTable("joursHeures");
dt1.COLUMNS.ADD(new DataColumn("jour",typeof(string)));
dt1.COLUMNS.ADD(new DataColumn("heures",typeof(int)));
FOR (int i = 0; i < sourceCR.Count ; i++)
{
DataRow dr = dt1.NewRow();
dr["Jour"]= … //Récupération de la donnée depuis ‘sourceCR’
dr["Heures"] = … //Récupération de la donnée depuis ‘sourceCR’
dt1.Rows.ADD(dr);
}
cr_1 rapport_graph= new cr_1();
rapport1.SetDataSource(dt1);
// deuxième sous-état :
DataTable dt= new DataTable("TimeEntry");
dt.COLUMNS.ADD(new DataColumn("Jour",typeof(string)));
dt.COLUMNS.ADD(new DataColumn("Projet",typeof(string)));
dt.COLUMNS.ADD(new DataColumn("Tâche",typeof(string)));
dt.COLUMNS.ADD(new DataColumn("Heures",typeof(int)));
…
FOR (int i = 0; i < sourceCR.Count ; i++)
{
DataRow dr = dt.NewRow();
dr["Jour"]= … //Récupération de la donnée depuis ‘sourceCR’
dr["Projet"] = … //Récupération de la donnée depuis ‘sourceCR’
…
dt.Rows.ADD(dr);
}
Cr2 rapport2= new Cr2();
rapport2.SetDataSource(dt);
cr_final rapport_complet= new cr_final();
//CrystalReportViewer1.ReportSource=rapport_complet;
MemoryStream oStream;
oStream =(MemoryStream)rapport_complet.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";
Response.BinaryWrite(oStream.ToArray());
Response.End();
Response.FLUSH();
Quand j'ai essayé d'exporter, j'ai cette erreur là au niveaui de la ligne oStream = ... : LogonException: Echec de la connexion
Quand j'essaie seulement de visualiser avec le viewer, l'erreur est :
Echec de la connxion - Une exception non génerée s'est produite lors de l'exécution de la demande Web actuelle
J'ai essayé aussi de visualiser le rapport aprés avoir rajouté les informations d'identification pour me connecter à la BDD en faisant ceci
Code C# :
cr_timesheet_final rapport_complet= new cr_timesheet_final();
CrystalDecisions.Shared.TableLogOnInfos infos2 = new CrystalDecisions.Shared.TableLogOnInfos();
CrystalDecisions.Shared.TableLogOnInfo info2 = new CrystalDecisions.Shared.TableLogOnInfo();
CrystalDecisions.Shared.ConnectionInfo conn2 = new CrystalDecisions.Shared.ConnectionInfo();
conn2.ServerName = ...;
conn2.UserID = ...;
conn2.Password = ...;
info2.ConnectionInfo = conn2;
infos2.ADD(info2);
CrystalReportViewer1.LogOnInfo = infos2;
CrystalReportViewer1.ReportSource=rapport_complet;
mais l'erreur est la même.
Quelqu'un peut m'aider svp ? ça me bloque, j'arrive plus à avancer ...
Merci