代码改变世界

水晶报表参数字段在代码中赋值

2009-11-18 19:01  苏飞  阅读(5485)  评论(2编辑  收藏  举报

阅读全文下载例子:http://www.cckan.net/forum.php?mod=viewthread&tid=176

根据参数自段可得到具体要显示哪些报表

  //   声明将参数传递给查看器控件所需的变量。
  ParameterFields   paramFields   =   new   ParameterFields   ();   
  ParameterField   paramField   
=   new
   ParameterField   ();   
  ParameterDiscreteValue   discreteVal   
=   new
   ParameterDiscreteValue   ();   
  ParameterRangeValue   rangeVal   
=   new
   ParameterRangeValue   ();   
  
//   第一个参数是具有多个值的离散参数。设置参数字段的名称,它必须和报表中的参数相符。   

  paramField.ParameterFieldName   =   "客户姓名";   
  
//   设置第一个离散值并将其传递给该参数。   

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

  discreteVal   =   new   ParameterDiscreteValue   ();   
  discreteVal.Value   
=   "Aruba   Sport"
;   
  paramField.CurrentValues.Add   (discreteVal);   
  
//   将该参数添加到参数字段集合。   

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

  paramField   =   new   ParameterField   ();   
  
//   设置参数字段的名称,它必须和报表中的参数相符。   

  paramField.ParameterFieldName   =   "客户   ID";   
  
//   设置范围的开始值和结束值并将该范围传递给该参数。   

  rangeVal.StartValue   =   42;   
  rangeVal.EndValue   
=   72
;   
  paramField.CurrentValues.Add   (rangeVal);   
  
//   将第二个参数添加到参数字段集合。   

  paramFields.Add   (paramField);   
  
//   将参数字段集合放入查看器控件。   

  crystalReportViewer1.ParameterFieldInfo   =   paramFields;

 

下面是我自己的应用:

        public void OnePage(CrystalReportViewer crystalReportViewer,int a)
        {
            ParameterFields paramFields 
= new
 ParameterFields();
            ParameterField paramField 
= new
 ParameterField();
            ParameterDiscreteValue discreteVal 
= new
 ParameterDiscreteValue();
            //   第一个参数是具有多个值的离散参数。设置参数字段的名称,它必须和报表中的参数相符。   

            paramField.ParameterFieldName = "ARC_I_ID";
            
//   设置离散值并将其传递给该参数。

            discreteVal.Value = id;
            paramField.CurrentValues.Add(discreteVal);
            
//   将该参数添加到参数字段集合。

            paramFields.Add(paramField);
            
//   将参数字段集合放入查看器控件。   

            crystalReportViewer.ParameterFieldInfo = paramFields;
        }

第一段代码有两个参数字段,第二个代码有一个参数字段。