Crystal report + proc stock avec param + code behind [Résolu]

Signaler
Messages postés
159
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
5 novembre 2010
-
Messages postés
159
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
5 novembre 2010
-
Bonjour à vous tous !

Voici mon soucie : je recherche un peu partout comment passer des paramètres à une procédure stockée qui constitue la source de données d'un composant crystal report afin de pouvoir exporter des données au format pdf, rtf, xls etc.

Je précise que je n'utilise pas de dataset car je n'arrivais pas à utiliser le type null mais un objet ADO (en utilisant l'assistant :p)

Je n'arrive pas à définir les paramètres de la procédure stockée en code behind :(

Malheureusement je ne trouve pas d'info pouvant me décoincer sur les forums ni même dans les sources en vb sur codes sources :(

Et j'en profite pour demander s'il est possible de passer null avec un datasource ?

Je m'en remets à vous !

Merci d'avance ; )

2 réponses

Messages postés
159
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
5 novembre 2010

Alors c'était facile

Dans mon moteur de recherche, au lieu de taper procédure stockée etc etc etc.

J'ai mis : crystal report + stored procedure

Et là j'ai eu un exemple concret qui marche :)

Donc j'ai noté deux choses : il faut d'abord charger le document rpt.

Ensuite charger les paramètres :

(je n'utilise pas les balises de code car ça ne wrap pas le texte mais place des scrollbar :p)

//--------------------------------------
ReportClass crystRepObject = new Export1med();

for (int i = 1; i < Request.QueryString.AllKeys.Count(); i++)
{
string paramUrl = Request.QueryString.GetValues(i).First();
if (!string.IsNullOrEmpty(paramUrl))
crystRepObject.SetParameterValue(i-1, paramUrl);
[color=green]// i-1 car mon premier paramètre contient le type de format.
}

try
{/color// t correspond au type de format par exemple :
// CrystalDecisions.Shared.ExportFormatType.WordForWindows;
oStream = (MemoryStream)crystRepObject.ExportToStream(t);
Response.Clear();
Response.Buffer = true;
Response.ContentType = content_type;
Response.BinaryWrite(oStream.ToArray());
}
catch (Exception ex)
{
Response.Write("Impossible de générer le fichier PDF !");
}
//---------------------------

Plusieurs moyen, soit comme moi, avec le index soit avec le nom du param en string :
crystRepObject.SetParameterValue("monParametre", paramUrl);
Messages postés
159
Date d'inscription
jeudi 11 janvier 2007
Statut
Membre
Dernière intervention
5 novembre 2010

En espérant que ça soit utile à quelqu'un d'autre ... :)

Bonne journée amis développeur !