Comment relier une source de données XML dynamique à un Crystal Report Viewer ? [Résolu]

bpignier
Messages postés
3
Date d'inscription
jeudi 11 septembre 2003
Dernière intervention
25 avril 2005
- 25 avril 2005 à 17:26 - Dernière réponse : baynas
Messages postés
3
Date d'inscription
mercredi 26 mars 2008
Dernière intervention
30 août 2008
- 21 mai 2008 à 11:42
Bonjour à tous,

Merci à tous pour vos questions sur le forum concernant les Crystal report ! Grace à vous, j'ai bien dégrossi mon probleme !
A présent j'essaye de connecter un flux XML (qui conservent tjs la même structure) et de générer à partir de ce document, des factures papiers et des factures PDF (via l'export).

Et là je bloque !

Je suis sous Visual Studio .NET 2003 EA. Je suis bien enregistré et j'ai ma clé d'activation.
Sous Crystal Report, qd je créé un nouvel etat, je choisi "Autres sources de données" et je sélectionne mon doc XML sur mon HDD. Je paramètre mes champs, je construis mon état sans aucun probleme.
Mon etat CR s'apl : ExportExcel.rpt
Puis sous mon formulaire WinForm :


XmlDocument doc = new XmlDocument() ;


doc.Load(@"C:\toto.xml") ;


ExportExcel exe = new ExportExcel() ;


exe.SetDataSource(doc) ;


crystalReportViewer1.ReportSource = exe ;


crystalReportViewer1.Refresh() ;

Ce code génère une erreur de type : "Query Engine error" suivi d'une adresse d'un fichier RPT placé dans un repertoire temporaire.

J'aimerai bcp que vous m'aidiez à résoudre mon souci.

Merci d'avance @++
---------------------------------------------------------------------------------------
La hasard est la forme que prend Dieu pour passer inaperçu. :-)
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Arthenius
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Dernière intervention
6 septembre 2011
- 25 avril 2005 à 18:29
3
Merci
et si tu chargait ton document XML dans un dataset plutot et que tu passerais ce dataset (avec le SetDataSource) a ton Report...

plutot que ton Doc.Load() ...

perso j'utilise CR avec des Dataset que je genere dans VS, vide de données, je construit mon etat a partir du XSD, puis dans un programme je rempli un dataset typée (en rapport avec le XSD utilisee precedement), je fais un setdatasource(DS_rempli) et crystalreportviewer...
et ca marche tres tres bien..

le probleme vient peut etre du fait que tu a generer ton etat a partir d'un XML et qu'apres tu lui file un Xml (qui est le meme) mais ca lui fait peut etre perdre ces billes....

cré un dataset qui a la meme tete que ton fichier XML, genere ton etat depuis ce XSD et rempli le Dataset par prog...

Sinon utilise cette petite fonction que j'ai trouver sur le net et adapter a mes besoins


public
static
bool ExportXls(System.Data.DataTable Dt)


{



bool retour =
true;



try


{


Excel.ApplicationClass excel =
new Excel.ApplicationClass();


excel.Application.Workbooks.Add(
true);


System.Data.DataTable table = Dt;



int ColumnIndex=0;



foreach(System.Data.DataColumn col
in table.Columns)


{


ColumnIndex++;


excel.Cells[1,ColumnIndex]=col.ColumnName;


}



int rowIndex=0;



foreach(System.Data.DataRow row
in table.Rows)


{


rowIndex++;


ColumnIndex=0;



foreach(System.Data.DataColumn col
in table.Columns)


{


ColumnIndex++;


excel.Cells[rowIndex+1,ColumnIndex]=row[col.ColumnName].ToString();


}


}


excel.Visible =
true;


Excel.Worksheet worksheet = (Excel.Worksheet)excel.ActiveSheet;


worksheet.Activate();


}



catch(Exception xcp)


{


MessageBox.Show("Erreur dans 'Outils.Fonction.ExportXls' : " + xcp.Message);


retour =
false;


}



return retour;


}

tu passe une datatable (ton xml charger dans un dataset par exemple) et zou il t'ouvre Excel avec les donnees exporter...(attention aux references a rajouter dans ton projet !!)


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."

Merci Arthenius 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de Arthenius
baynas
Messages postés
3
Date d'inscription
mercredi 26 mars 2008
Dernière intervention
30 août 2008
- 21 mai 2008 à 11:42
0
Merci
bonjour
je developpe un service web pour mon école , sauf que je trouve maintenant des difficultées pour gérer les documents excel existant avec XML (surtout ecrir dans un document xml à partir d'un fichier excel) s'il vous plais aidez moi , je suis un peut limité par le temps , 
merci d'avance pour votre aide  
Commenter la réponse de baynas

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.