如何向水晶报表传递日期类型参数?

azev 2006-07-05 09:58:13
10.0
pull模式
报表的数据源是一个存储过程
存储过程两个参数是日期类型

我在aspx.cs如下执行
...
paramField=new ParameterField();
paramField.Name="@"+sKey;

discreteVal=new ParameterDiscreteValue();
discreteVal.Value=sValue;
paramField.CurrentValues.Add(discreteVal);
paramFields.Add (paramField);
...

为什么总是不行呢?
而传递其他类型的参数就可以进去
...全文
214 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
azev 2006-07-06
  • 打赏
  • 举报
回复
搞不清什么原因 已经没问题了
Yellow198267 2006-07-06
  • 打赏
  • 举报
回复
转化成string就可以
copall 2006-07-05
  • 打赏
  • 举报
回复

参考~~~

// all the parameter fields will be added to this collection
ParameterFields paramFields = new ParameterFields();
// the parameter fields to be sent to the report
ParameterField pfItemId = new ParameterField();
ParameterField pfStartDate = 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.P***(strStartDate);
dcEndDate.Value = DateTime.P***(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;
gy348 2006-07-05
  • 打赏
  • 举报
回复
CrystalReport1 rpt=new CrystalReport1();

CrystalDecisions.Shared.TableLogOnInfo tLogInfo=new TableLogOnInfo();
CrystalDecisions.Shared.TableLogOnInfos tLogInfos=new TableLogOnInfos();
CrystalDecisions.Shared.ConnectionInfo info=new ConnectionInfo();
info.ServerName="xshis";
info.UserID="his";
info.Password="hispwd";


TextObject GetText;
GetText=rpt.ReportDefinition.ReportObjects["T1"] as TextObject;
GetText.Text ="时间段:"+ this.dateTimePicker1.Value.ToShortDateString();
GetText.Text += " ----"+ this.dateTimePicker2.Value.ToShortDateString();

tLogInfo.ConnectionInfo=info;
tLogInfo.TableName="CHT_ZYXX";
tLogInfos.Add(tLogInfo);
crystalReportViewer1.LogOnInfo=tLogInfos;

ReportDocument ReprotDoc=new ReportDocument();
ParameterValues ParaValues=new ParameterValues();
ParameterRangeValue ParaRangeValue=new ParameterRangeValue();
ReprotDoc=rpt;


ParaRangeValue.StartValue=this.dateTimePicker1.Value.ToShortDateString();
ParaRangeValue.EndValue=this.dateTimePicker2.Value.ToShortDateString();
ParaValues.Add(ParaRangeValue);
ReprotDoc.DataDefinition.ParameterFields["InTime"].ApplyCurrentValues(ParaValues);
crystalReportViewer1.ReportSource=ReprotDoc;

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧