|
new ParameterField(); ParameterField pfEndDate = new ParameterField(); // 设置在报表中,将要接受的参数字段的名称 pfItemId.ParameterFieldName = "ItemId"; pfStartDate.ParameterFieldName = "StartDate"; pfEndDate.ParameterFieldName = "EndDate"; ParameterDiscreteValue dcItemId = new ParameterDiscreteValue(); ParameterDiscreteValue dcStartDate = new ParameterDiscreteValue(); ParameterDiscreteValue dcEndDate = new ParameterDiscreteValue();
dcItemId.Value = nItemId; dcStartDate.Value = DateTime.Parse(strStartDate); dcEndDate.Value = DateTime.Parse(strEndDate);
pfItemId.CurrentValues.Add(dcItemId); pfStartDate.CurrentValues.Add(dcStartDate); pfEndDate.CurrentValues.Add(dcEndDate); paramFields.Add(pfItemId); paramFields.Add(pfStartDate); paramFields.Add(pfEndDate);
// 将参数集合绑定到报表浏览控件 crViewer.ParameterFieldInfo = paramFields; } 现在来解释一下上面的代码。在水晶报表中,浏览器控件有一个属性parameterfieldsinfo,该属性可以通过绑定parameterfields类型的集合,将相关的参数的实际数值传递到报表。Parameterfields类型集合通过add的方法,接收Parameterfield类型的对象。因此,我们先为itemid,startdate,enddate三个参数创建parameterfield类型的对象,并且设置它们对应报表中接受参数的名称:
ParameterFields paramFields = new ParameterFields(); ParameterField pfItemId = new ParameterField(); ParameterField pfStartDate = new ParameterField(); ParameterField pfEndDate = new ParameterField(); // 设置在报表中,将要接受的参数字段的名称 pfItemId.ParameterFieldName = "ItemId"; pfStartDate.ParameterFieldName = "StartDate"; pfEndDate.ParameterFieldName = "EndDate"; 接着,可以为这些参数字段设置具体的值了,但由于parameterfield必须接受P arameterDiscreteValue类型的对象,所以,再创建相关的实例:
ParameterDiscreteValue dcItemId = new ParameterDiscreteValue(); ParameterDiscreteValue dcStartDate = new ParameterDiscreteValue(); ParameterDiscreteValue dcEndDate = new Parameter上一页 [1] [2] [3] [4] [5] [6] [7] 下一页 |
|
|
|
|
|
|
|