passer le paramètre au CRYSTAL REPORT via C # dans asp.net

Je suis nouveau à Crystal Report.J'ai conçu le rapport de cristal en suivant ce lien Crystal Report avec SQL Stored Procedure Parameter et Visual Studio En fait, je dois passer ID différent (Valeur d'input du SP) à la SP que je connecté avec le cristal rapport.

C'est le code que je passe l'identification au rapport de cristal:

protected void Button1_Click(object sender, EventArgs e) { ssortingng QuotationID = ViewState["QUOTATION_ID"].ToSsortingng(); ReportDocument reportDocument = new ReportDocument(); ParameterField paramField = new ParameterField(); ParameterFields paramFields = new ParameterFields(); ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue(); paramField.Name = "@id"; paramDiscreteValue.Value = QuotationID; paramField.CurrentValues.Add(paramDiscreteValue); paramFields.Add(paramField); paramFields.Add(paramField); CrystalReportViewer1.ParameterFieldInfo = paramFields; ssortingng reportPath = Server.MapPath("~/CrystalReport.rpt"); reportDocument.Load(reportPath); CrystalReportViewer1.ReportSource = reportDocument; } 

Mais quand jamais je clique sur le button il request l'ID … entrez la description de l'image ici

Pour régler le paramètre sur le cristal, je le fais toujours comme ceci:

 ReportDocument reportDocument = new ReportDocument(); reportDocument.Load(reportPath); reportDocument.SetParameterValue("@id", QuotationID); 

si vous voulez convertir votre rapport en pdf:

 var exportOptions = reportDocument.ExportOptions; exportOptions.ExportDestinationType = ExportDestinationType.NoDestination; exportOptions.ExportFormatType = ExportFormatType.PortableDocFormat; var req = new ExportRequestContext {ExportInfo = exportOptions}; var stream = reportDocument.FormatEngine.ExportToStream(req); 

cela vous renvoie un stream de files que vous pouvez ouvrir à partir de la page ASPX.