0
Private Sub showreport_Click()
    sql = "select * from student_record_database where"
    sql=sql+ Grade='" & Combo1.Text & "' AND Meal='" & Combo11.Text & "'"
    Set RES = CON.Execute(sql)
    Set DataReport1.DataSource = RES
    DataReport1.WindowState = vbMaximized
    DataReport1.Show vbModal
End Sub

我使用此代码作为记录集来创建数据报告。

  1. 我的任务是从各种组合框中选择选项,然后显示它的报告,因此那里需要记录集..

  2. 我的问题是,这段代码是否足以创建数据报告???

  3. 我没有设置数据环境或数据报告的任何属性,例如(连接-命令-sql),因为我将此记录集直接传递给数据报告,因此无需在数据环境属性中触发任何sql。

但不幸的是,它没有显示所需的输出请帮助我。

4

2 回答 2

0

试试这个。要将相当添加到字符串,请使用双相当。您也错过了将第二个 Combo1 引用拼写为 Combo11

Private Sub showreport_Click()
  sql = "select * from student_record_database where "
  sql = sql & "Grade=""" & Combo1.Text & """ AND Meal=""" & Combo1.Text & """"
  Set RES = CON.Execute(sql)
  Set DataReport1.DataSource = RES
  DataReport1.WindowState = vbMaximized
  DataReport1.Show vbModal
End Sub
于 2013-01-19T06:22:47.977 回答
0

试试这个:

Private sub cmdprint_click()

Dim rs as new adodb.recordset

rs.open "SQL Query Statement Here",CON, adOpenDynamic, adLockOptimistic

set datareport1.datasource=rs
datareport1.show

end sub

注意: 数据报告数据源应在设计模式期间清除。(请参阅数据报告上的属性并将其数据源属性设置为空。)哦……还有一件事,请记住,您还应该为数据报告中的每个文本框对象设置数据字段属性,该属性对应于数据库中的数据字段设计时间...

我使用这种方法很长时间了,效果很好。

于 2013-01-29T03:15:39.477 回答