出于对帐目的,我需要一个表格,根据指定日期显示所有未清供应商商品。开放供应商帖子列表必须与客户余额相加。
我创建了一个简单的查询,如下所示。通常使用付款,退款等方式关闭帖子时,查询有效。我的问题是如何处理用信用证结束的发票,当然是相反的。
我不是SQL专家,无法访问源代码i Dynamics NAV。
关闭供应商帖子"通常" Vendor Ledger Entry表中有一行,Detailed Vendor Ledg_ Entry中有一行。我使用过帐日期,截止日期,按金额和结算日期关闭来计算指定日期的剩余金额。 使用creditnota关闭发票时,详细信息表中有两行,而供应商条目表中只有一行。在查看发票和信用单时,我可以看到只有一个帖子持有截止日期和结束金额。因此,我认为我需要忽略这些信息。
我相信我可以先通过Vendor Ledger Entry No_
总结金额和小组来解决问题。当总和等于0
时,我可以忽略截止日期和结算金额。只有在此之后我才能使用我当前的查询。
任何人都可以帮我解决问题吗?
我可以附加一个可视化我的数据的简单表格示例吗?
- QUERY -
SELECT *
-Case WHEN VLE.[Closed at Date] <= '2016-06-30' THEN DVLE.[Amount (LCY)]-VLE.[Closed by Amount (LCY)]
WHEN VLE.[Closed at Date] > '2016-06-30' THEN DVLE.[Amount (LCY)]
END as Beløb
FROM [Detailed Vendor Ledg_ Entry] as DVLE
JOIN [Vendor Ledger Entry] as VLE ON DVLE.[Vendor Ledger Entry No_] = VLE.[Entry No_]
WHERE DVLE.[Posting Date] between '2015-01-04' and '2016-06-30' and
DVLE.[Document Type] >= 2 and
Case WHEN VLE.[Closed at Date] <= '2016-06-30' THEN -DVLE.[Amount (LCY)]+VLE.[Closed by Amount (LCY)]
WHEN VLE.[Closed at Date] > '2016-06-30' THEN -DVLE.[Amount (LCY)]
END <> 0
答案 0 :(得分:0)
我通过此查询解决了我的问题:
SELECT *
FROM [Detailed Vendor Ledg_ Entry] as DVLE
JOIN [Vendor Ledger Entry] as VLE
ON DVLE.[Vendor Ledger Entry No_] = VLE.[Entry No_]
WHERE DVLE.[Posting Date] <= '2016-06-30'
GROUP BY VLE.[Posting Date] ,
VLE.[Vendor No_] ,
VLE.[Global Dimension 1 Code] ,
VLE.[Due Date] ,
VLE.[Closed at Date] ,
VLE.[External Document No_] , DVLE.[Vendor Ledger Entry No_]
HAVING sum(DVLE.[Amount (LCY)]) <> 0