如何获取CRViewer控件中的日期参数字段?

时间:2009-08-18 08:57:37

标签: vb6

使用VB 6和Crystal Report 8.5

我想传递CRViewer控件中的日期参数。

代码:

Dim crApp As CRAXDRT.Application
Dim Report As CRAXDRT.Report
CR2.ParameterFields(1) = "txtFromDate;" & dtpFrom.Value & ";true"
CR2.ParameterFields(2) = "txtToDate;" & dtpTo.Value & ";true"
CR2.DataFiles(0) = App.Path & "\STAR.mdb"
CR2.ReportFileName = App.Path & "\MS.rpt"
Set crApp = New CRAXDRT.Application
Set Report = crApp.OpenReport(App.Path & "\MS.rpt")
CRViewer2.ReportSource = Report
CRViewer2.ViewReport

Parameterfield(1),Parameterfield(2)未在crviewercontrol中显示。

如何在CRViewer控件中传递日期参数字段?

需要VB 6代码帮助。

1 个答案:

答案 0 :(得分:0)

据我了解,您必须以与CR期望的格式相同的格式将日期传递给参数字段。在Crystal Reports中打开报表,然后转到每个参数字段的“编辑”屏幕。确保字段是Date类型而不是DateTime,因为在您给出示例时,您似乎不需要考虑时间。然后单击“设置默认值”,此屏幕将显示CR期望参数的格式(通常为M / D / YYYY)。在您的代码中,格式化要传递给参数的日期值:

CR2.ParameterFields(1) = "txtFromDate;" & Format(dtpFrom.Value, "M/D/YYYY") & ";true"
CR2.ParameterFields(2) = "txtToDate;" & Format(dtpTo.Value, "M/D/YYYY") & ";true"

编辑:或D / M / YYYY,只取决于CR想要什么。