使用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代码帮助。
答案 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想要什么。