Ce code permet de passer un paramètre défini dans le code .NET à un état crystal report. Il est au préalable nécessaire d'avoir un état crystal report nommé "ETAT" rempli par un dataset nommé "ds". L'état sera affiché dans un contrôle crystalreportviewer nommé "CRV" et possédera un paramètre nommé "param".
Deux imports sont nécessaires : Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.Shared
Dim crparamfielddefs As ParameterFieldDefinitions
Dim crparamfielddef As ParameterFieldDefinition
Dim crparamvalues As ParameterValues
Dim crparamdiscretevalue As New ParameterDiscreteValue
Dim report As New ETAT
report.SetDataSource(ds)
crparameterdiscretevalue.Value = "toto" ' ou une valeur de textbox par exemple, textbox.text
crparamfielddefs = report.DataDefinition.ParameterFields
crparamfielddef = crparamfielddefs.Item("param")
crparamvalues = crparamfielddef.CurrentValues
crparamvalues.Add(crparamdiscretevalue)
crparamfielddef.ApplyCurrentValues(crparamvalues)
CRV.ReportSource = report