I don't have VB code but there are sites that will convert. Also I'm setting the values off the report object and no the viewer report object.
So not sure about the syntax.
Another things is the Parameter Property of the Viewer itself, I believe you need to set it to False - ReuseParameterValuesOnRefresh.
CR Parameters have the "@" in front of them:
SetCrystalParam(rpt, "@percentage", "100");
private void SetCrystalParam(CrystalDecisions.CrystalReports.Engine.ReportDocument rpt, string parameterName, string listOfValues)
{
int ParCount = rpt.DataDefinition.ParameterFields.Count;
foreach (CrystalDecisions.CrystalReports.Engine.ParameterFieldDefinition crParamField in rpt.DataDefinition.ParameterFields)
//foreach (CrystalDecisions.ReportAppServer.DataDefModel.ParameterField crParamField in rptClientDoc.DataDefinition.ParameterFields)
{
if ("@" + crParamField.Name.ToLower() == parameterName.ToLower())
{
try
{
CrystalDecisions.Shared.ParameterValues myparameterValues = new CrystalDecisions.Shared.ParameterValues();
CrystalDecisions.Shared.ParameterDiscreteValue crDiscreteValue = new CrystalDecisions.Shared.ParameterDiscreteValue();
crDiscreteValue.Value = listOfValues;
myparameterValues.IndexOf(crParamField.Name);
myparameterValues.Add(crDiscreteValue);
crParamField.ApplyCurrentValues(myparameterValues);
return;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
return;
}
}
}
}
Don