向水晶报表传递参数

在报表文件中定义Paramter Fields的字段,然后通过以下的方式将参数传递进报表:

1、定义参数,参数的名称要和报表文件中相同

    CrystalDecisions.Shared.ParameterFields paraFields = new CrystalDecisions.Shared.ParameterFields();
    CrystalDecisions.Shared.ParameterField paraField = new CrystalDecisions.Shared.ParameterField();
    CrystalDecisions.Shared.ParameterDiscreteValue paraValue = new CrystalDecisions.Shared.ParameterDiscreteValue();
    paraField.Name = "TermString";
    paraValue.Value = this.TermString;
    paraField.CurrentValues.Add(paraValue);
    paraFields.Add(paraField);

2、传入参数

    crystalReportViewer1.ParameterFieldInfo = paraFields;

 

// 声明将参数传递给
// 查看器控件所需的变量。
ParameterFields paramFields = new ParameterFields ();
ParameterField paramField = new ParameterField ();
ParameterDiscreteValue discreteVal = new ParameterDiscreteValue ();
ParameterRangeValue rangeVal = new ParameterRangeValue ();

// 第一个参数是具有多个值的离散参数。
// 设置参数字段的名称,它必须
// 和报表中的参数相符。
paramField.ParameterFieldName = "p1";

// 设置第一个离散值并将其传递给该参数。
discreteVal.Value = "dongliang";
paramField.CurrentValues.Add (discreteVal);

// 设置第二个离散值并将其传递给该参数。
// discreteVal 变量被设置为新值,这样,以前的设置
// 就不会被覆盖。
discreteVal = new ParameterDiscreteValue ();
discreteVal.Value = "DONGLIANG";
paramField.CurrentValues.Add (discreteVal);

// 将该参数添加到参数字段集合。
paramFields.Add (paramField);

// 第二个参数为区域值。paramField 变量
// 被设置为新值,这样,以前的设置就不会被覆盖。
paramField = new ParameterField ();

// 设置参数字段的名称,它必须
// 和报表中的参数相符。
paramField.ParameterFieldName = "p2";

// 设置范围的开始值和结束值并将该范围传递给
// 该参数。
rangeVal.StartValue = 42;
rangeVal.EndValue = 72;
paramField.CurrentValues.Add (rangeVal);

// 将第二个参数添加到参数字段集合。
paramFields.Add (paramField);

// 将参数字段集合放入查看器控件。
CrystalReportViewer1.ParameterFieldInfo = paramFields;
rpt = new CrystalReport1();
CrystalReportViewer1.ReportSource = rpt;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值