大家好,如果您熟悉Microsoft Dynamics Navision 2013及其表格 然后你可以帮助我
您好
我正在使用Microsoft Dynamics NAV 2013,SQL Server 2014,Tableau Desktop
我创建了一个新表,其中包含消费税率,位置,项目和项目计量单位表格中的数据,以便计算转移消费税。转移消费税是当我们的葡萄酒从一个仓库运输到另一个仓库时我们支付的税。我对价值条目表进行了左连接,其中包含所有与项目相关的交易,因为我需要“发票数量”列来计算转移消费税。这就是我计算转移消费税的方法:(发票数量/公升转换系数*单位费率)=转移消费税。通过这种方法,我确实获得了所需的结果,请参阅SQL脚本以获取转移消费税
SELECT DISTINCT
b.[Entry No_] ,
a.[Starting Date],
b.[Posting Date],
b.[Item No_],
b.[Invoiced Quantity],
b.[Sales Amount (Actual)],
a.[Litre Conversion Factor],
a.[Unit Rate] ,
b.[Location Code],
a.[Excise Location],
a.[Excise Type Code],
a.[Unit Of Measure Code]
FROM [Spier Live$Value Entry] b
LEFT JOIN [Transfer Excise Tbl] a
ON a.[No_] = b.[Item No_]
AND b.[Location Code] = a.[Location Code]
AND DateDiff(y,b.[Posting Date],a.[Starting Date]) > -365
AND DateDiff(y,b.[Posting Date],a.[Starting Date]) < 0
WHERE b.[Posting Date] > '2013-02-26'
AND b.[Gen_ Bus_ Posting Group] IN ('LOCA','EXSA')
AND b.[Invoiced Quantity] <>0
GROUP BY b.[Entry No_] ,a.[Starting Date], b.[Posting Date], b.[Item No_], b.[Invoiced Quantity],
b.[Sales Amount (Actual)], a.[Litre Conversion Factor], a.[Unit Rate] ,
b.[Location Code], a.[Excise Location], a.[Excise Type Code], a.[Unit Of Measure Code]
完成所有这些后,销售额(实际)值会发生变化,但情况并非如此。有人告诉我,可能是左连接导致销售额(实际)发生变化。我无法更改脚本,因为转移消费税价值不正确或是否有其他或更好的方式来编写此查询,以便销售额(实际)和转移消费税值保持不变。哦,我编写查询的方式的原因是因为我想获得每个项目交易的单位费率。
我真的不知道为什么这个脚本会改变销售额(实际)
提前感谢您的帮助
答案 0 :(得分:0)
问题的根源不在联接中。实际上,在“销售额(实际)”和“单位费率”等金额字段上对结果进行分组是没有意义的。 我想你想要做的是将物品交易中所有相关价值条目的销售额和发票数量相加。然后你应该从GROUP BY子句中删除这些字段并在它们上添加一个总和:
SELECT
...
SUM([Invoiced Quantity]),
SUM([Sales Amount (Actual)])
然后按[项目分类帐编号]而不是[输入编号]对结果进行分组。值输入中的输入编号是财务(成本)交易的标识符,而项目分类帐输入编号为。实际上确定了与项目相关的活动。