我正在使用带有C#和Crystal Reports的Visual Studio2008来使用参数字段来制作报告。我试图在参数字段中添加多个数据,但是当我运行报告时,我只能看到一行。
我使用此代码向Details部分中名为smena的字符串参数字段添加多个值。
ReportDocument rptDnevenManuelna = new ReportDocument();
rptDnevenManuelna.Load(Server.MapPath("~/crptDnevenManuelna.rpt"));
ParameterField smena_field = rptDnevenManuelna.ParameterFields["smena"];
smena_field.CurrentValues.Clear();
smena_field.EnableAllowMultipleValue = true;
ParameterDiscreteValue smena_value = new ParameterDiscreteValue();
smena_value.Value = "1";
smena_field.CurrentValues.Add(smena_value);
smena_value = new ParameterDiscreteValue();
smena_value.Value = "2";
smena_field.CurrentValues.Add(smena_value);
crvDnevenManuelna.ReportSource = rptDnevenManuelna;此外,我还尝试使用以下代码:
rptDnevenManuelna.SetParameterValue("smena", new String[] { "1", "2", "3" });并像这样尝试:
rptDnevenManuelna.SetParameterValue("smena","1");
rptDnevenManuelna.SetParameterValue("smena","2");当我调试代码的最后一行"crvDnevenManuelna.ReportSource = rptDnevenManuelna;“时,我可以清楚地看到,在rptDnevenManuelna -> ParameterFields -> -> Current values -> Count = 2中,这个参数字段有2个值。当我的报告显示时,我只能看到第一行。在designer视图中,我将此参数字段设置为允许多个值。我认为我的错误应该是在报告的设计中,因为当我在显示报告之前重置报告时,我可以在"smena“字段中放入多个值,但在提交之后我仍然只得到一行。
发布于 2015-05-24 07:19:11
您的报告中有记录筛选器?您是否在过滤器中使用"=“或" in”?
https://stackoverflow.com/questions/30354802
复制相似问题