我有一个Access应用程序,它已经运行多年了。这是一个工资系统。有一个查询(我们称之为Query3(从两个交叉表查询中提取数据。在交叉表查询中引入一个参数之前,一切都很好。参数是指表单上的日期。现在我无法创建以Query3作为记录源的报表。当我使用报告向导并选择Query3作为其记录源时,不会显示字段名称。我有一个基于Query3以编程方式创建报告的子,但现在有了参数,这也失败了。我真的被难住了。有什么变通办法吗?提前感谢您的帮助。
您在使用表单吗!MyForms!MyControl语法作为Crosstab子系统中的参数?问题似乎与Access找不到控件有关。如果可能的话,我过去做过的一件事是删除交叉表参数,而是在运行报告之前设置交叉表的SQL。例如:
CurrentDB.QueryDefs("CrossTabSubName").SQL - "SELECT * FROM TABLE WHERE MyParam = 'A'"
如果你有一个按钮或其他东西可以启动报告,这可能是一个方便的地方。如果参数在同一个表单上(即报表过滤器(,那么这种方法实现起来很简单。在本例中,"A"的值是表单上的一个控件,它允许用户筛选报表。