Dynamics NAV - 按日期打开供应商项目

时间:2016-07-07 16:24:16

标签: sql accounting dynamics-nav

出于对帐目的,我需要一个表格,根据指定日期显示所有未清供应商商品。开放供应商帖子列表必须与客户余额相加。

我创建了一个简单的查询,如下所示。通常使用付款,退款等方式关闭帖子时,查询有效。我的问题是如何处理用信用证结束的发票,当然是相反的。

我不是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

1 个答案:

答案 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