仓位数据查询-学习笔记

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

仓位数据查询-学习笔记

仓位值的使用分为:组合方式、非组合方式

  • 非组合方式:仓位值不录入,即仓位值不采用组合方式,则在单据录入每个仓位值集的具体数据

  • 组合方式:设置有仓位值,则仓库中在保存时会生成多个仓位值的组合数据,仓位值组合总数(笛卡尔乘积)等于仓位集1的仓位值数 * 仓位值集2 * 仓位值集N 的仓位值数在单据录入时只能只能从对应仓位的值组合中进行选择


非组合方式数据

一、新增仓库,启用仓位管理,添加仓位值值,不设置仓位值

image.webp


-- 仓库启用仓位的值集维度

SELECT T2.FSTOCKID, T2.FNUMBER, T3.FNAME,T1.FFLEXID 仓位值集维度内码, T31.FNUMBER 仓位值集编码,T31L.FNAME 仓位值集名称 FROM T_BD_STOCKFLEXITEM T1
JOIN T_BAS_FLEXVALUES T31 ON T1.FFLEXID = T31.FID
JOIN T_BAS_FLEXVALUES_L T31L ON T31L.FID = T31.FID
JOIN T_BD_STOCK T2 ON T1.FSTOCKID = T2.FSTOCKID
JOIN T_BD_STOCK_L T3 ON T2.FSTOCKID = T3.FSTOCKID
WHERE T2.FSTOCKID = 140723 
ORDER BY T2.FSTOCKID


image.webp


此时,T_BD_FLEXVALUESCOM 、T_BAS_FLEXVALUESDETAIL 两张表未生成该仓库相关的仓位值数据

SELECT * FROM T_BD_FLEXVALUESCOM  WHERE FSTOCKID = 140723     -- 仓库仓位值集合组合    

SELECT * FROM T_BAS_FLEXVALUESDETAIL -- 值集资料维度数据


新增其他入库单,因为该仓库的仓位值集下没有设置对应仓位值,所以可以选择任意的仓位值

image.webp


审核单据

image.webp


查看即时库存(T_STK_INVENTORY)和仓位值集维度使用数据T_BAS_FLEXVALUESDETAIL

select * from T_STK_INVENTORY where FMATERIALID = 128834 and FSTOCKID = 140723 
select * from T_BAS_FLEXVALUESDETAIL where FID = 100017
-- 即时库存仓位FstockLocId关联查询仓位值
select T3.FNUMBER, T31.FNAME, * from T_STK_INVENTORY T1 
left JOIN T_BAS_FLEXVALUESDETAIL T2 ON T1.FSTOCKLOCID = T2.FID -- 值集资料维度数据
left join T_BAS_FLEXVALUESENTRY T3 ON T3.FENTRYID = T2.FF100001   -- 仓位值
left join T_BAS_FLEXVALUESENTRY_L T31 ON T31.FENTRYID=T3.FENTRYID and T31.FLOCALEID=2052 --仓位值
left join T_BAS_FLEXVALUES T12 on T3.FID = T12.FID and T12.FFLEXNUMBER = 'FF100001' --仓位值集 -基本信息
where FSTOCKORGID = 100003 and FMATERIALID = 128834 and FSTOCKID = 127842


这里相当于在单据使用时仓位维度才确定下来,系统根据各维度仓位值生成了一个确定的仓位内码


数据说明:

  • 针对T_BAS_FLEXVALUESDETAIL中的数据可以这么理解: FID: 仓位内码  列名:FF100001,FF100002中的100001(编码:区)、100002(编码:位) 表示仓位值集的内码,数据行中100002(B区)、100020(17位)对应为仓位值内码

  •  即(B区)-(17位) 所对应的仓位内码为:100017


image.webp


组合方式数据

一、新增仓库,启用仓位管理,添加仓位值集,同时设置仓位值

image.webp

查询: 仓库启用仓位的值维度

SELECT T2.FSTOCKID, T2.FNUMBER, T3.FNAME, T4.FFLEXENTRYID AS 仓位值内码, T41.FNUMBER 仓位值编码, T41L.FNAME 仓位值名称, T1.FFLEXID 仓位值集维度内码,T31.FNUMBER 仓位值集编码,T31L.FNAME 仓位值集名称 FROM T_BD_STOCKFLEXITEM T1
JOIN T_BD_STOCKFLEXDETAIL T4 ON T1.FENTRYID = T4.FENTRYID
JOIN T_BAS_FLEXVALUES T31 ON T1.FFLEXID = T31.FID
JOIN T_BAS_FLEXVALUES_L T31L ON T31L.FID = T31.FID
JOIN T_BAS_FLEXVALUESENTRY T41 ON T4.FFLEXENTRYID = T41.FENTRYID
JOIN T_BAS_FLEXVALUESENTRY_L T41L ON T41L.FENTRYID = T41.FENTRYID
JOIN T_BD_STOCK T2 ON T1.FSTOCKID = T2.FSTOCKID
JOIN T_BD_STOCK_L T3 ON T2.FSTOCKID = T3.FSTOCKID
WHERE T2.FSTOCKID = 140734
ORDER BY T2.FSTOCKID, T31.FNUMBER, T41.FNUMBER


image.webp


此时,T_BD_FLEXVALUESCOM 、T_BAS_FLEXVALUESDETAIL 两张表在仓库保存后生成该仓库相关的仓位值数据

select * from T_BD_FLEXVALUESCOM where FSTOCKID = 140734     -- 仓库仓位值集合组合    

select * from T_BAS_FLEXVALUESDETAIL where FID in 
(select FSTOCKLOCID from T_BD_FLEXVALUESCOM where FSTOCKID = 140734) -- 值集资料维度数据


当设置有仓位值,则仓库中在保存时会生成多个仓位值的组合数据,仓位值组合总数(笛卡尔乘积)等于仓位集1的仓位值数 * 仓位值集2 * ..... 仓位值集N 的仓位值数,在单据录入时只能从对应仓位的值组合中进行选择

如何批量禁用和反禁用仓位值组合


image.webp


新增其他入库单,因为该仓库的仓位值集下设置对应仓位值,所以只能从仓位值组合中进行选择

image.webp




以上分析仅供参考,如有错误,请指导改正。


仓位数据查询-学习笔记

仓位值的使用分为:组合方式、非组合方式非组合方式:仓位值不录入,即仓位值不采用组合方式,则在单据录入每个仓位值集的具体数据组合方式...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息