You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ActiveReports 10运行时设置数据源报错,求排查解决方法

ActiveReports 10 运行时设置数据源报错排查方案

针对你遇到的“‘DataSource’ 不是‘Script.ReportScript’的成员”编译错误,可从以下几个方向排查:

1. 确认报表类型对应的数据源设置方式

ActiveReports 10不同报表类型的数据源赋值逻辑不同:

  • SectionReport(区域报表):直接使用Me.DataSource赋值是正确的,但需确保脚本上下文指向的是SectionReport实例。
  • PageReport(页面报表):不能直接用Me.DataSource,需通过数据源集合添加,语法为Me.DataSources.Add("数据源名称", 你的DataTable),之后报表控件需绑定到这个命名数据源。

2. 补充必要的命名空间引用

脚本开头必须导入相关命名空间,否则会导致类型或属性无法识别:

Imports System.Data
Imports System.Data.SqlClient

3. 修正代码语法错误

原代码中连接字符串使用了中文引号“”,需替换为英文引号"",这是常见的编译错误诱因。

4. 验证脚本上下文的对象访问方式

部分场景下,脚本的Me可能指向Script容器而非报表实例,此时需通过Me.Report访问报表对象,比如SectionReport可改为:

Me.Report.DataSource = _dt

修正后的SectionReport脚本示例

Imports System.Data
Imports System.Data.SqlClient

Sub ActiveReport_ReportStart
    Dim connectionString = "Data Source=PC\SQLEXPRESS;Initial Catalog=Contratti;Integrated Security=True"

    Dim con As SqlConnection = New SqlConnection(connectionString)
    con.Open()

    Dim _strSQL As String = "Select id , cod from customers"

    Dim _cm As New SqlCommand(_strSQL, con)

    Dim _dt As New DataTable
    Dim _da As New SqlDataAdapter(_cm)
    _da.Fill(_dt)
    _dt.TableName = "customers"
    
    Me.DataSource = _dt
    
    con.Close() ' 关闭连接避免资源泄漏
End Sub

修正后的PageReport脚本示例

Imports System.Data
Imports System.Data.SqlClient

Sub PageReport_ReportStart
    Dim connectionString = "Data Source=PC\SQLEXPRESS;Initial Catalog=Contratti;Integrated Security=True"

    Dim con As SqlConnection = New SqlConnection(connectionString)
    con.Open()

    Dim _strSQL As String = "Select id , cod from customers"

    Dim _cm As New SqlCommand(_strSQL, con)

    Dim _dt As New DataTable
    Dim _da As New SqlDataAdapter(_cm)
    _da.Fill(_dt)
    _dt.TableName = "customers"
    
    Me.DataSources.Add("customers", _dt)
    
    con.Close()
End Sub

内容的提问来源于stack exchange,提问作者LukaGer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:45:32