今天在做财务总监要求的一个报表,需要采集一个上月月末的结存。易飞ERP系统中有个月档:期初+本期发生数量。通常企业在本月的月初比如10号做上月的库存结转,也就意味着1-10号之前如果按照这个计算方法那么上月月末的库存是0;
上月末库存如何解决呢?如果能获取指定日期的结存,那就完美解决了。
CCWN:写了一个现成的SQL,包装成函数:
-- =============================================
-- Author: <David Gong>
-- Create date: <2015-11-12>
-- Description: <指定日期结存 感谢:CCWEN>
-- =============================================
Create function [dbo].[GetDateLineQty](
@Item AS VARCHAR(20),
@DateLine as nvarchar(10)
)returns decimal(18,4)
as
begin
declare @qty as decimal(18,4)
select @qty=(A.QTY+B.LC004) FROM (
select LA001,LA009,sum(LA011*LA005) AS QTY from INVLA WHERE LA001=@Item AND LA004<=@DateLine and LA004>=LEFT(@DateLine,6)+'01'
GROUP BY LA001,LA009 ) A LEFT JOIN (
select LC001,LC003