访问复选框参数以限制查询

时间:2019-08-01 03:58:01

标签: sql ms-access

我正在使用Access。 我的查询是搜索会计核算表,并从表格的标准中产生记录。最后一个标准,一个复选框,我遇到了问题。 我希望能够包含/排除已支付的记录。付款记录在另一个表中。

我的表单上有一个复选框“显示已付款项”。取消选中时,查询应从“付款”表中排除具有匹配发票的项目。

我的SQL:

SELECT Main.Invo, Main.InvoDate, Main.Amt, Main.PartyId, Main.TboInvoRloc, Main.TboDocNo, Main.TboPax
FROM Main
WHERE Main.RecSrce<>"Accounts"

AND Main.InvoDate BETWEEN [Forms]![Report]![startDate] AND [Forms]![Report]![endDate]
AND Main.PartyId =IIF([Forms]![Report]![PartyID] IS NULL, PartyID, [Forms]![Report]![PartyID])
AND Main.Status = IIF([Forms]![Report]![Status] IS NULL, Status, [Forms]![Report]![Status])
AND Main.Ac1 = IIF([Forms]![Report]![Ac1] IS NULL, Ac1, [Forms]![Report]![Ac1])
AND Main.Ac2 = IIF([Forms]![Report]![Ac2] IS NULL, Ac2, [Forms]![Report]![Ac2])

AND IIF([Forms]![Report]![PaidCheck]=-1, 
NOT EXISTS
    (
        SELECT * FROM Payments
        WHERE Payments.DueInvo = Main.Invo
     ));

我知道这是一个相当简单的问题,但总体而言我还是很环保的,在线示例对于我来说通常太复杂了。

0 个答案:

没有答案