首先要打开一数据库连接,创建一数据集,然后将数据源...
Set DBConn = New ADODB.Connection 
BookDBConn.ConnectionString= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + OpenFilePath + "\data.mdb;Persist Security Info=False"
DBConn.Open
Set rsPRN = New ADODB.Recordset
sSQL = "Select * From KJPZZS"
rsPRN.Open sSQL, ModuleMain.DBConn, adOpenStatic, adLockReadOnly
Set DataReport1.DataSource=rsPRN
可以吗?

解决方案 »

  1.   

    在报表中创建一个PUBLIC的FUNCTION或SUB,传入参数是你的报表的SQL,并创建一个RECORDSET。
    dim rs as new Adodb.recordset
    public Sub RptPrint(byval strSql as String)
    rs.open strSql,oconn,3,1
    set Me.Datasource=rs
    me.show
    end sub
    在报表的terminal事件中写入以下代码
    if rs.state<>0 then rs.close
    set rs=nothing
    报表中控件的格式可以使用以下语名来控制
    Datareport1.Sections("section1").Controls("text1").dataformat="yyyy-MM-dd"