将参数传递给晶体报告会要求输入参数值

本文关键字:输入 参数 报告会 参数传递 | 更新日期: 2023-09-27 18:30:15

我有一个水晶报告,我试图在其中将标签的文本传递给水晶报告。但是每当我尝试这样做时,都会询问或参数值。我有另一种形式可以做同样的事情,但它工作正常。这是我尝试过的代码:

 crystalReportViewer1.RefreshReport();
            ParameterFields paramFields = new ParameterFields();
            ParameterField paramField = new ParameterField();
            ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "kot";
            paramDiscreteValue.Value = NewOrderBL.KOTNo;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);
            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalVat";
            paramDiscreteValue.Value = NewOrderBL.totalvat;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);
            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalService";
            paramDiscreteValue.Value = NewOrderBL.totalservicetax;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);

            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalAmount";
            paramDiscreteValue.Value = NewOrderBL.totalamount;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);

            paramField = new ParameterField();
            paramDiscreteValue = new ParameterDiscreteValue();
            paramField.Name = "TotalServiceTax";
            paramDiscreteValue.Value = NewOrderBL.totalservicetax1;
            paramField.CurrentValues.Add(paramDiscreteValue);
            paramFields.Add(paramField);

NewOrderBL 是一个类文件,我将上面的变量定义为公共静态十进制(变量名)

请帮忙。

将参数传递给晶体报告会要求输入参数值

你接下来要对参数字段做什么?从代码中可以看出,您实际上并未向报告文档本身添加任何参数/值。

参数字段参数字段 = 新的参数字段();

选项 A: 将参数字段设置为报表文档的"参数字段"属性。

选项 B: 也许可以考虑使用ReportDocument.SetParameterValue http://msdn.microsoft.com/en-us/library/aa691465%28v=vs.71%29.aspx

我已经修复了它.只是添加了愚蠢的遗漏

crystalReportViewer1.ParameterFieldInfo = paramFields;

低于整体,它工作正常。