k3 cloud采购入库单单位问题

 检查sql语句:

--查询同一物料在不同组织下基本单位不一致的数据
select t2.fbaseunitid,t1.* from T_BD_MATERIAL t1 inner join t_bd_materialbase t2 on t1.fmaterialid = t2.fmaterialid where 
t1.fmasterid in (select t3.fmasterid from (
select distinct t1.fmasterid,t2.fbaseunitid from t_bd_material t1 inner join t_bd_materialbase t2
on t1.FMATERIALID = t2.FMATERIALID) t3 group by t3.FMASTERID having count(*) > 1)

--查询同一物料在不同组织下库存单位不一致的数据
select t2.FSTOREUNITID,t1.* from T_BD_MATERIAL t1 inner join T_BD_MATERIALSTOCK t2 on t1.fmaterialid = t2.fmaterialid where 
t1.fmasterid in (select t3.fmasterid from (
select distinct t1.fmasterid,t2.FSTOREUNITID from t_bd_material t1 inner join T_BD_MATERIALSTOCK t2
on t1.FMATERIALID = t2.FMATERIALID) t3 group by t3.FMASTERID having count(*) > 1)

--查询同一物料在不同组织下辅助单位不一致的数据
select t2.FAUXUNITID,t1.* from T_BD_MATERIAL t1 inner join T_BD_MATERIALSTOCK t2 on t1.fmaterialid = t2.fmaterialid where 
t1.fmasterid in (select t3.fmasterid from (
select distinct t1.fmasterid,t2.FAUXUNITID from t_bd_material t1 inner join T_BD_MATERIALSTOCK t2
on t1.FMATERIALID = t2.FMATERIALID) t3 group by t3.FMASTERID having count(*) > 1)


--查询即时库存表基本单位和物料不一致的数据
select * from T_STK_INVENTORY t1 
inner join T_BD_MATERIALBASE t3 on t1.FMATERIALID = t3.FMATERIALID 
where t1.FBASEUNITID <> t3.FBASEUNITID

--查询即时库存表库存单位和物料不一致的数据
select * from T_STK_INVENTORY t1 inner join T_BD_MATERIALSTOCK t2
on t1.FMATERIALID = t2.FMATERIALID 
where t1.FSTOCKUNITID <> t2.FSTOREUNITID

--查询即时库存表辅助单位和物料不一致的数据
select * from T_STK_INVENTORY t1 inner join T_BD_MATERIALSTOCK t2
on t1.FMATERIALID = t2.FMATERIALID 
where t1.FSECUNITID <> t2.FAUXUNITID


--查询库存余额基本单位和物料不一致的数据
select * from T_STK_INVbal t1 
inner join T_BD_MATERIALBASE t3 on t1.FMATERIALID = t3.FMATERIALID 
where t1.FBASEUNITID <> t3.FBASEUNITID 

--查询库存余额辅助单位和物料不一致的数据
select * from T_STK_INVbal t1 inner join T_BD_MATERIALSTOCK t2
on t1.FMATERIALID = t2.FMATERIALID 
where t1.FSECUNITID <> t2.FAUXUNITID


--结存临时明细基本和物料不一致的数据   需要做库存关账才能查询最新有效数据,可以据此结果查询都哪些业务单据基本单位数据有问题
 select t1.FFORMID 单据类型,t5.fname 单据类型名称,t1.fbillno 单据编号,t1.fbillid 单据内码,t1.FBASEQTY 基本单位数量,t1.FBASEUNITID 单据基本单位,
t2.FBASEUNITID 物料基本单位, t1.fmaterialid 物料内码,t4.fnumber 物料编码, t1.* 
from T_STK_STKBALOCCUR t1 inner join 
T_BD_MATERIALBASE t2 on t1.FMATERIALID = t2.FMATERIALID 
inner join T_BD_MATERIAL t4 on t1.FMATERIALID = t4.FMATERIALID 
 inner join t_meta_objecttype_L t5 on t1.fformid = t5.fid and t5.flocaleid = 2052
where t1.FBASEUNITID <> t2.FBASEUNITID


--结存临时明细辅助单位和物料不一致的数据   需要做库存关账才能查询最新有效数据,可以据此结果查询都哪些业务单据库存辅单位数据有问题
 select t1.FFORMID 单据类型,t5.fname 单据类型名称,t1.fbillno 单据编号,t1.fbillid 单据内码,t1.FSECUNITID 单据辅助单位,t3.FAUXUNITID 物料辅助单位, 
 t1.fmaterialid 物料内码,t4.fnumber 物料编码, t1.* 
from T_STK_STKBALOCCUR t1  
inner join T_BD_MATERIALSTOCK t3 on t1.FMATERIALID = t3.FMATERIALID 
inner join T_BD_MATERIAL t4 on t1.FMATERIALID = t4.FMATERIALID 
 inner join t_meta_objecttype_L t5 on t1.fformid = t5.fid and t5.flocaleid = 2052
where t1.FSECUNITID <> t3.FAUXUNITID 

--余额表维度重复数据
select count(*) ,FBALTYPE,FBALDATE,FCOMBINEID,FMTONO,FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE from T_STK_INVBAL
group by  FBALTYPE,FBALDATE,FCOMBINEID,FMTONO,FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE
having count(*) > 1
order by FBALDATE desc
--或者:
select count(*) ,FBALTYPE,FBALDATE,FSTOCKORGID,FOWNERTYPEID,FOWNERID,FKEEPERTYPEID,FKEEPERID,FSTOCKID,FSTOCKLOCID,FMATERIALID,FBOMID,FAUXPROPID,
FMTONO,FPROJECTNO,FSTOCKSTATUSID,FLOT,FPRODUCEDATE,FEXPIRYDATE from T_STK_INVBAL
group by  FBALTYPE,FBALDATE,FSTOCKORGID,FOWNERTYPEID,FOWNERID,FKEEPERTYPEID,FKEEPERID,FSTOCKID,FSTOCKLOCID,FMATERIALID,FBOMID,FAUXPROPID,
FMTONO,FPROJECTNO,FSTOCKSTATUSID,FLOT,FPRODUCEDATE,FEXPIRYDATE
having count(*) > 1

--即时库存重复维度数据
select count(*) ,FCOMBINEID,FMTONO,FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE from T_STK_INVENTORY
group by  FCOMBINEID,FMTONO,FPROJECTNO,FPRODUCEDATE,FEXPIRYDATE
having count(*) > 1

原文地址:https://www.cnblogs.com/woshinige/p/13690271.html