0

我在 MS-Access Pro Plus 2021 中创建了一个基于交叉表查询 (qrySales) 的数据表表单 (frmSales) 用于报告。“qrySales”本身从 SQL Server 2019 后端的链接视图 (dbo_Sales) 中读取数据。一切都很好,结果符合我的预期。

由于我不想过多地处理后端并且不需要更新数据,因此我创建了一个传递查询 (PTSales),从 SQL 视图中复制了相同的 SQL 代码。查询 (qrySales) 现在从 Pass-Through (PTSales) 读取数据。交叉表查询 (qrySales) 的输出与以前相同并且很好,但问题是我的数据表表单 (frmSales) 现在什么也没有显示。我在数据表形式中使用了记录集类型、数据输入和允许添加,但没有得到任何结果。这是视图 (dbo_Sales) 和传递查询 (PTSales) 中使用的代码。

SELECT
  c.CompanyName AS Customer
 ,p.TotalOfItem AS Sales
 ,q.ExchangeRate AS ExRate
 ,q.LastStatus AS Status
 ,q.IsProject AS Type
 ,q.INVDate AS [Invoice Date]
FROM dbo.tblProducts p
INNER JOIN dbo.tblQuotations q
  ON p.QuotationID = q.QuotationID
INNER JOIN dbo.tblCompany c
  ON q.CompanyID = c.CompanyID
WHERE q.RevActivated = 1
AND q.StatusCode IN (10, 11)

这是交叉表查询:

TRANSFORM Sum(IIf(DoExRate(),[Sales]*[ExRate],[Sales])) AS Sum1
SELECT
    PTSales.Customer
  , Sum(IIf(DoExRate(),[Sales]*[ExRate],[Sales])) AS [Sum]
FROM
    PTSales
WHERE
    (
        (
            (
                PTSales.[Invoice Date]
            )
            Between [Forms]![frmReportsMenu]![FromDate] And [Forms]![frmReportsMenu]![ToDate]
        )
        AND
        (
            (
                PTSales.Type
            )
            ALike IIf(IsProjectRun()=0,"%",IsProjectRun())
        )
    )
GROUP BY
    PTSales.Customer PIVOT PTSales.Status In ("Invoiced","Paid");

这里有什么问题?

4

0 回答 0