报告的多个记录源

Posted

技术标签:

【中文标题】报告的多个记录源【英文标题】:Multiple record sources for a report 【发布时间】:2016-03-25 19:34:17 【问题描述】:

在 Access 2013 中,我有 4 个不同的查询最终需要绑定到一个报表。当位于表单上的组合框中的值不是“*”时,需要使用每个查询(有 4 个不同的组合框,每个查询一个)。我想知道是否可以使用 If 语句的变体让 Access 根据这 4 个组合框中的每个组合框中的值让 Access 知道我需要使用哪个查询。

例如: IF [Forms]![Report Console]![cbo1]""(非空白)然后使用 Query1 作为报告的记录源,IF [Forms]![Report Console]![cbo2] "" 然后使用 Query2 作为记录源等。 有可能吗?谢谢!

【问题讨论】:

【参考方案1】:

是的,您可以在其On Open 事件中设置报告的RecordSource

Private Sub Report_Open(Cancel As Integer)

    If Nz([Forms]![Report Console]![cbo1], "") <> "" Then
        Me.RecordSource = "Query1"
    ElseIf Nz([Forms]![Report Console]![cbo2], "") <> "" Then
        Me.RecordSource = "Query2"
    ' etc
    End If

End Sub

当然,所有查询都必须返回相同的列集。

【讨论】:

以上是关于报告的多个记录源的主要内容,如果未能解决你的问题,请参考以下文章

对源数据来自多个来源的 Solr 记录进行索引的好方法是啥?

CMDB简介

s-s-rS 中的多个报告使用相同的存储过程

如何使用 Apache Flume 过滤多个源数据?

在 Python 中收集和报告多个异常的惯用方式

将多个数据源放入一个源中