基于多表 MSAccess 的报表

Posted

技术标签:

【中文标题】基于多表 MSAccess 的报表【英文标题】:Reports based on multiple tables MSAccess 【发布时间】:2017-06-07 12:38:58 【问题描述】:

我在 MSAccess 2016 中设计了一个包含许多控件(文本框)的报告(工资单)。 有 2 个表格员工详细信息和工资详细信息。 一些控件需要来自员工详细信息表的数据和一些来自工资表的数据。 我有 2 个主键

Sl.No 员工编号

两个表。 我已经通过关系连接了员工ID。 如何在文本框中指定表达式,以便获得与两个表都匹配的记录?

【问题讨论】:

我们需要知道的是用于链接表的外键。 员工ID是外键。我已经使用关系功能连接了两个表中的员工 ID。 【参考方案1】:

使用查询而不是表格作为报告的记录源。然后你不需要文本框中的任何表达式,只需要列名。我通常为查询提供与报告相同的名称,但带有另一个前缀。例如。对于报告rptSalary,查询名为qrptSalary

SELECT * FROM
    Employee E
    LEFT JOIN SalaryDetails S
        ON E.EmployeeID = S.EmployeeID

在报告中,您可以插入组页眉和页脚。您将使用 EmployeeID 作为分组列。然后,您可以将员工字段放在员工组标题中,将工资详细信息放在详细信息部分中,并将任何总和放在组页脚中。

【讨论】:

否,但员工字段将乘以工资明细条目的数量。如果您想为每个工资明细记录重复打印相同的员工姓名,则不需要任何分组。

以上是关于基于多表 MSAccess 的报表的主要内容,如果未能解决你的问题,请参考以下文章

MS Access:将参数传递给不带 SQL 的子报表

在多个字段的 Access 筛选中打开报表

MS Access,嵌套在表单中的格式化子报表

MS Access:多表形式,其中一个表被调用两次

确定子表单/子报表是不是在 MS Access 中加载了表单或报表

MS Access 多报告参数