SQL 查询即时库存(带查询仓位名称)

SQL 语句查询即时库存,带有查询仓位名称,如果不需要查询仓位名称,可以把With 语句部分去掉:
WITH TEMPA
AS ( SELECT DISTINCT
a.FSTOCKID ,
a.FSTOCKLOCID ,
'FF' + CAST (B.FFLEXID AS VARCHAR) FFLEXID ,
CASE WHEN B.FFLEXID = 100001 THEN c.FF100001 --需要根据实际的维度改下,T_BAS_FLEXVALUESDETAIL中FF1000的字段都要填上
WHEN B.FFLEXID = 100002 THEN c.FF100002
ELSE 0
END FFLEXVALUE
FROM T_STK_INVENTORY a --T_STK_INVENTORY代表数据源,可替换成仓位所在表,如单据明细、即时库存等
INNER JOIN T_BD_STOCKFLEXITEM B ON a.FSTOCKID = B.FSTOCKID
LEFT JOIN T_BAS_FLEXVALUESDETAIL c ON c.FID = a.FSTOCKLOCID
),
TEMPB AS
(
SELECT T2.FSTOCKLOCID ,
FSTOCKLOC = ( STUFF(( SELECT ',' + T1.FNAME
FROM ( SELECT DISTINCT
A.FSTOCKLOCID ,
B.FNAME
FROM TEMPA A
INNER JOIN T_BAS_FLEXVALUESENTRY_L B ON A.FFLEXVALUE = B.FENTRYID
AND B.FLOCALEID = 2052
) T1
WHERE T1.FSTOCKLOCID = T2.FSTOCKLOCID
FOR
XML PATH('')
), 1, 1, '') )
FROM ( SELECT DISTINCT
A.FSTOCKLOCID ,
B.FNAME
FROM TEMPA A
INNER JOIN T_BAS_FLEXVALUESENTRY_L B ON A.FFLEXVALUE = B.FENTRYID
AND B.FLOCALEID = 2052
) T2
GROUP BY T2.FSTOCKLOCID
)
SELECT a.FID ,
a.FSTOCKORGID ,--库存组织
a.FKEEPERTYPEID , --保管者类型
a.FKEEPERID ,--保管者
a.FOWNERTYPEID ,--货主类型
a.FOWNERID ,--货主
a.FSTOCKID ,--仓库
a.FSTOCKLOCID ,--仓位
ISNULL(loc.FSTOCKLOC,'') FSTOCKLOC,--仓位
a.FAUXPROPID ,--辅助属性
a.FSTOCKSTATUSID ,--库存状态
a.FLOT ,--批号
a.FBOMID ,--BOM版本
a.FMTONO ,--计划跟踪号
a.FPROJECTNO ,--项目编号
(CASE WHEN d.FISEXPPARTOFLOT='1' THEN e.FPRODUCEDATE ELSE a.FPRODUCEDATE END) FPRODUCEDATE ,--生产日期
(CASE WHEN d.FISEXPPARTOFLOT='1' THEN e.FEXPIRYDATE ELSE a.FEXPIRYDATE END) FEXPIRYDATE ,--有效期至
a.FBASEUNITID ,--基本单位
a.FBASEQTY ,--库存基本单位数量
a.FSECQTY ,--辅单位数量
a.FSTOCKUNITID ,--库存单位
c.FMATERIALID ,--物料內码
(CASE WHEN d.FSTOREURNUM=0 THEN a.FBASEQTY ELSE a.FBASEQTY*d.FSTOREURNOM/d.FSTOREURNUM END) FQTY ,--库存主单位数量
(CASE WHEN d.FSTOREURNUM=0 THEN ISNULL(b.FBASELOCKQTY, 0) ELSE ISNULL(b.FBASELOCKQTY, 0)*d.FSTORSQL 查询即时库存(带查询仓位名称)
SQL 语句查询即时库存,带有查询仓位名称,如果不需要查询仓位名称,可以把With 语句部分去掉:WITH TEMPA AS ( SELECT DISTINC...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



