private static ParameterFieldDefinition SetupReportParameter(ReportDocument cryRpt, string parameterName, object value) { ParameterFieldDefinitions crParameterFieldDefinitions = cryRpt.DataDefinition.ParameterFields; if (!IsExistParaName(cryRpt, parameterName)) { return(null); } ParameterFieldDefinition crParameterFieldDefinition = crParameterFieldDefinitions[parameterName]; //!!!!!!!!!!! if it is allow, it disalbe the fornter prompe, means run time can change the value crParameterFieldDefinition.EnableAllowEditingDefaultValue = true; // crParameterFieldDefinition.ApplyMinMaxValues(value, value); ParameterDiscreteValue crParameterDiscreteValue = new ParameterDiscreteValue(); crParameterDiscreteValue.Value = value; crParameterDiscreteValue.IsRange = false; ParameterValues crParameterValues = crParameterFieldDefinition.CurrentValues; crParameterValues.Add(crParameterDiscreteValue); crParameterFieldDefinition.ApplyCurrentValues(crParameterValues); crParameterFieldDefinition.ApplyDefaultValues(crParameterValues); //crParameterFieldDefinition.PromptText = value.ToString(); crParameterFieldDefinition.DiscreteOrRangeKind = DiscreteOrRangeKind.DiscreteValue; if (crParameterFieldDefinition.HasCurrentValue) { crParameterFieldDefinition.ApplyCurrentValues(crParameterValues); } return(crParameterFieldDefinition); }