在没有数据集的情况下填充时,仅显示1行晶体报告详细信息



我使用参数字段使用Visual Studio 2008与c#和Crystal Reports制作报告。我试图在参数字段中添加多个数据,但是当我运行报告时,我只能看到一行。

我使用这段代码将多个值添加到详细信息部分中名为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。我可以清楚地看到,在rptDnevenManuelna -> ParameterFields -> [0] -> Current Values -> Count = 2中,该参数字段有2个值。当我的报告显示时,我只能看到第一行。在设计器视图中,我将此参数字段设置为允许多个值。我认为我的错误应该是在报告的设计,因为当我在显示它之前重置我的报告时,我可以在字段"smena"中放置多个值,并且在提交后我只得到一行。

您的报告中有记录过滤器吗?您是否在过滤器中使用"="或"in"?

相关内容

  • 没有找到相关文章

最新更新