我想枢行为列是根据格式的日期'yyyy-嗯'虽然该作品作为预期为目前的一个月期间,它无法工作,未来几个月我不能如何解决这个问题,并将非常感谢任何的反馈。
这里有一点小小的背景: 我已经购买量来自一个供应商的摘要表格,包括信息有关的合同,例如合同类型、数量、数量、创建日期格式的进入'yyyy-嗯',因为实际日期不会不管用于这一目的。
剩余数量是另一个领域来自一个项目分类账项目表中本质上是总结各种项目基于的很多数。
消耗量是什么我想枢的基础上个月,这是消费也是来自项目的分类帐条目有一个条目的类型过滤器
SELECT *
FROM
(
SELECT VS.[Vendor Name], VS.[Vendor No_] AS 'Vendor_No', VS.[Date] AS 'Date',
SUM(VS.Quantity) AS 'Contracted_Quantity',
SUM(CQ.Consumed_Qty*-1) AS 'Consumed_Qty',
SUM(RQ.Remaining_Qty) AS Remaining_Qty,
'Contract Type' =
CASE
WHEN VS.[Contract Type] = 1 THEN 'CONTRACT A'
WHEN VS.[Contract Type] = 2 THEN 'CONTRACT B'
ELSE 'OTHERS'
END
FROM
(SELECT [Document No_],[Vendor No_],[Lot No_],FORMAT([Date Created], 'yyyy-MMM') AS 'Date'
,[Purch_ Contract No_],[Contract Type],[Quantity] FROM [A].[dbo].[Company$Volume Summary]) VS
/*to identify remaining quantity by lot (Lot no. is included in my VS alias statement)*/
LEFT JOIN (SELECT [Lot No_] ,SUM([Remaining Quantity]) AS Remaining_Qty FROM [A].[dbo].[Company$Item Ledger Entry]
GROUP BY [Lot No_]) RQ on RQ.[Lot No_] = VS.[Lot No_]
/*to identify consumed volume, if consumption is in future month compared to purchase month, it doesn't populate, this is where I believe the problem is*/
LEFT JOIN (SELECT [Lot No_],FORMAT([Posting Date], 'yyyy-MMM') AS 'Date',SUM([Quantity]) AS Consumed_Qty
FROM [A].[dbo].[Company$Item Ledger Entry]
WHERE [Entry Type] = '5'
GROUP BY [Lot No_], Format([Posting Date], 'yyyy-MMM')) CQ on CQ.[Lot No_] = VS.[Lot No_] and CQ.Date >= VS.[Date]
GROUP BY VS.[Vendor Name], FORMAT(VS.[Date Created],'yyyy-MMM'), PT.[Contract Type], VS.[Vendor No_]
) cs
PIVOT
(
SUM(Consumed_Qty)
for Date in ([2021-Sep], [2021-Oct], [2021-Nov])
) pvt
结果(仅表示部分):
正如你可以看到,第二ABC技术的记录显示,消费在2021-Oct是准确的,但是,根据这一合同数量购买的也在2021-Oct,并且什么是剩余的在于记录,该消费需要9,373和短(383)相比8,990它被准确地显示在2021-Oct. 在这种情况下383实际消耗量下降在2021-Nov,但是,我的代码似乎并没有把那个捡起来
这是确切的情况下在两个斑马的技术,记录以及,在那里的剩余的是0这将意味着已经完全被消耗,但是,由于采购合同日期为他们两人都在2021-Sep和消耗量在未来月份2021-Oct,SQL脚本不挑起来。
我感谢任何的指导,以帮助解决这个问题,并在此先感谢。