【发布时间】:2016-01-22 14:33:09
【问题描述】:
这一定是一个非常简单的错误。我只是看不到它。 我的 Where 字符串:
strWhere = "tbl_final.[Geschäftspartner] = " & Chr(34) & BP & Chr(34)
应该放在这里:
DoCmd.OpenReport "Contribution", acViewPreview, , strWhere
结果是报告打开...但包含所有记录。很长一段时间以来,我一直在玩弄不同版本的 SQL 字符串,甚至将参数引入底层查询(我知道这不是解决方案)。
我没看到什么?
更新: 底层查询是直接嵌入在报告 RecordSource 属性中的 SQL 语句
更新2:
如果我创建一个仅包含字段Geschäftspartner 和一个指标字段的全新报告,那么代码将起作用。因此,错误一定是由报告中的某些内容引起的。
UPDATE3:链接到报告的完整查询
SELECT tbl_final.Geschäftspartner, tbl_final.Referenzwährung, tbl_final.Periodenbeginn, tbl_final.Periodenende, tbl_final.Anlagekategorie, tbl_final.[Produkt / ISIN], tbl_final.ISIN, tbl_final.[Telekurs Valorennummer], tbl_final.[Asset Domicile], tbl_final.[Valor name], tbl_final.[FIRE: Kontonummer], tbl_final.[Special Fund Category], tbl_final.[FRS: Type of Collateral], tbl_final.[Nominal Currency], tbl_final.[Asset Type], tbl_final.[Anteile per Periodenende], tbl_final.[Marktwert per Periodenende], tbl_final.[Durchschn# Marktwert in Referenzwährung], tbl_final.[Durchschnittlicher Anteil in %], tbl_final.[AVA_TER in %], tbl_final.[AVA_TER Datum], tbl_final.[VDF_TER in %], tbl_final.[VDF_TER Datum], tbl_final.[TER in %], tbl_final.[TER Datum], tbl_final.[Gewichtete TER in %], tbl_final.[TER in Referenzwährung], tbl_final.Client, tbl_final.CRM, tbl_final.[Received TER-Report for 2014], tbl_final.Language
FROM tbl_final;
【问题讨论】:
-
你没有给我们太多的工作。
BP是什么?底层查询 SQL 是什么?见minimal reproducible example -
我已经提供了尽可能多的信息,并且我认为这些信息是相关的......此外,没有上传数据库(由于补偿政策,我不能这样做。),这是一个相当困难的问题,以您可以重现的方式来描述......毕竟,我的主要问题是我没有收到错误消息。
-
“基础查询是直接嵌入在报告 RecordSource 属性中的 SQL 语句” - 您可以提供此 SQL 语句。
-
@Andre 你说得对,我应该提供更多信息......我犹豫了,因为我认为我知道问题出在哪里。如果我提供了 SQL 语句和我的 VBA 代码,你们可能已经能够用一双“鹰眼”提供帮助。我将在下面发布解决方案。
标签: sql ms-access vba ms-access-2010