3168 lines
180 KiB
Transact-SQL
3168 lines
180 KiB
Transact-SQL
declare
|
||
@moBillNo varchar(100)
|
||
,@salesBillNo varchar(100)
|
||
,@ProMateriaNumber varchar(100)
|
||
,@startMaterialId int
|
||
,@endMaterialId int
|
||
,@FSDate varchar (30)
|
||
,@FEDate varchar (30)
|
||
,@FSStock varchar (max)
|
||
,@FName varchar (255)
|
||
SET @moBillNo =''
|
||
SET @salesBillNo =''
|
||
SET @moBillNo = 0
|
||
SET @moBillNo = 0
|
||
SET @FSDate = '2024-02-06'
|
||
SET @FEDate = '2024-03-06'
|
||
--SET @FSNumber = 'TSH182H000208O'
|
||
--SET @FENumber = 'TSH182H000208O'
|
||
SET @FSStock =''
|
||
SET @FName = ''
|
||
|
||
SET nocount ON
|
||
declare @FCloseBALDate varchar (30)
|
||
declare @FClosedate varchar (30)
|
||
|
||
--查询起始日期最近一期的期末结存日期
|
||
If NOT Exists(
|
||
SELECT FORGID,MAX(FCLOSEDATE) fclosedate
|
||
FROM T_STK_CLOSEPROFILE
|
||
WHERE FORGID IN (1) AND FCATEGORY = 'STK' AND (FCLOSEDATE < @FSDate)
|
||
GROUP BY FORGID)
|
||
BEGIN
|
||
SET @FClosedate='2020-01-01'
|
||
SET @FCloseBALDate='2020-01-01'
|
||
--print @FClosedate
|
||
END
|
||
ELSE
|
||
BEGIN
|
||
--SET @FClosedate='2019-07-01'
|
||
SELECT @FClosedate= CONVERT(varchar (30),DATEADD(D,1,MAX(FCLOSEDATE)),23) FROM
|
||
T_STK_CLOSEPROFILE WHERE ((FORGID IN (1) AND FCATEGORY = 'STK') AND (FCLOSEDATE < @FSDate)) GROUP BY FORGID
|
||
SET @FCloseBALDate=CONVERT(varchar (30),DATEADD(D,-1,@FClosedate),23)
|
||
--print @FClosedat
|
||
END
|
||
|
||
--生成临时选取仓库
|
||
|
||
IF EXISTS(SELECT * FROM tempdb..SYSOBJECTS WHERE id=OBJECT_ID('tempdb..#tmpStockID'))
|
||
BEGIN
|
||
DROP TABLE #tmpStockID
|
||
print '存在'
|
||
END
|
||
Create Table #tmpStockID (
|
||
FID INT IDENTITY(1,1)
|
||
,FStockID INT
|
||
)
|
||
DECLARE @Strsql varchar(max)
|
||
SET @Strsql= 'INSERT INTO #tmpStockID SELECT DISTINCT FSTOCKID FROM T_BD_STOCK WHERE 1=1 ' +@FSStock
|
||
EXEC(@Strsql)
|
||
|
||
--库存状态报表
|
||
|
||
if EXISTS(SELECT * FROM tempdb..sysobjects WHERE id=object_id('tempdb..#Stock_Status_temp'))
|
||
begin
|
||
DROP TABLE #Stock_Status_temp
|
||
print '存在'
|
||
END
|
||
|
||
Create Table #Stock_Status_temp (
|
||
序号 INT IDENTITY(1,1),
|
||
物料内码 INT,
|
||
物料代码 varchar(100) null,
|
||
物料名称 varchar(255) null,
|
||
规格型号 varchar(255) null,
|
||
旧编码 varchar(100) null,
|
||
--单位 varchar(30) null,
|
||
上期结存 DECIMAL (18,2) Null,
|
||
本期采购入库 DECIMAL (18,2) Null,
|
||
本期耗用 DECIMAL (18,2) Null,
|
||
期末结存 DECIMAL (18,2) Null,
|
||
在途量 DECIMAL (18,2) Null,
|
||
在制数 DECIMAL (18,2) Null,
|
||
进检量 DECIMAL (18,2) Null,
|
||
未发量 DECIMAL (18,2) Null,
|
||
领料数量 DECIMAL (18,2) Null,
|
||
销售出库数量 DECIMAL (18,2) Null,
|
||
仓库拨出数量 DECIMAL (18,2) Null,
|
||
仓库拨入数量 DECIMAL (18,2) Null,
|
||
申购未转数 DECIMAL (18,2) Null,
|
||
受订量 DECIMAL (18,2) Null,
|
||
占用量 DECIMAL (18,2) Null,
|
||
可用库存 DECIMAL (18,2) Null,
|
||
仓库内码 INT,
|
||
仓库代码 varchar(100) null,
|
||
仓库名称 varchar(255) null,
|
||
包装内码 INT,
|
||
包装方式 varchar(255) null
|
||
)
|
||
|
||
if EXISTS(SELECT * FROM tempdb..sysobjects WHERE id=object_id('tempdb..#TMP'))
|
||
begin
|
||
DROP TABLE #TMP
|
||
print '存在'
|
||
END
|
||
|
||
CREATE TABLE #TMP (
|
||
FID INT IDENTITY(1,1),
|
||
FSTOCKORGID INT NOT NULL DEFAULT 0,
|
||
FBILLENTRYID INT NOT NULL DEFAULT 0,
|
||
FORDERBY INT NOT NULL DEFAULT 0,
|
||
FSTOCKIO CHAR (1) NULL,
|
||
FMATERIALID INT NOT NULL DEFAULT 0,
|
||
FAUXPROPID INT NOT NULL DEFAULT 0,
|
||
FDATE DATETIME NULL,
|
||
FSTOCKID INT NOT NULL DEFAULT 0,
|
||
FSTOCKLOCID INT NOT NULL DEFAULT 0,
|
||
FSTOCKSTATUSID INT NOT NULL DEFAULT 0,
|
||
FBILLNAME NVARCHAR (100) NULL,
|
||
FBILLID INT NOT NULL DEFAULT 0,
|
||
FBILLSEQID INT NULL,
|
||
FBILLNO NVARCHAR (100) NULL,
|
||
FBASEQCQTY DECIMAL (23,10) NOT NULL DEFAULT 0,
|
||
FBASEINQTY DECIMAL (23,10) NOT NULL DEFAULT 0,
|
||
FBASEOUTQTY DECIMAL (23,10) NOT NULL DEFAULT 0
|
||
)
|
||
|
||
--分析BOM层级物料
|
||
|
||
IF EXISTS(SELECT * FROM TEMPDB..SYSOBJECTS WHERE ID=OBJECT_ID('TEMPDB..#YC_T_MRP'))
|
||
BEGIN
|
||
DROP TABLE #YC_T_MRP
|
||
END
|
||
|
||
CREATE TABLE #YC_T_MRP(
|
||
FID INT IDENTITY(1,1),
|
||
FBOMNumber NVARCHAR(255),
|
||
FMATERIALID INT,
|
||
物料编码 NVARCHAR(255),
|
||
物料名称 NVARCHAR(255),
|
||
成品率 DECIMAL(28,10) DEFAULT (0),
|
||
分子 DECIMAL(28,10),--BOM分子
|
||
分母 DECIMAL(28,10),--BOM分母
|
||
FQty DECIMAL(28,10),--用量
|
||
FLevle INT,
|
||
FERPCLSID INT,
|
||
FProMaterialId INT,
|
||
FOrderNum NVARCHAR(255),
|
||
FBOMID INT,
|
||
BOM层级 NVARCHAR(200) NULL,
|
||
FSEQ1 INT,
|
||
FSEQ2 INT,
|
||
FSEQ3 INT,
|
||
FSEQ4 INT,
|
||
FSEQ5 INT,
|
||
FSEQ6 INT,
|
||
FParentNumber NVARCHAR(255)
|
||
)
|
||
|
||
IF EXISTS(SELECT * FROM TEMPDB..SYSOBJECTS WHERE ID=OBJECT_ID('TEMPDB..#BOMTMP'))
|
||
BEGIN
|
||
DROP TABLE #BOMTMP
|
||
END
|
||
|
||
/* 根据生产订单号,销售订单号,物料进行筛选对应的物料*/
|
||
SELECT
|
||
t0.FBILLNO
|
||
,t0.FID
|
||
,t0e.FQTY
|
||
,t0e.FENTRYID
|
||
,t0e.FMATERIALID
|
||
,t0e_a.FREPQUAQTY
|
||
--,t0e_a.FREQSRC --1.销售订单
|
||
,(CASE WHEN t1e.FSRCBILLNO is null THEN (CASE t0e_a.FREQSRC WHEN 1 THEN t0e.FSALEORDERNO ELSE '' END) ELSE t1e.FSRCBILLNO END) AS 'FSALEORDERNO'
|
||
INTO #TEMPMO
|
||
FROM
|
||
T_PRD_MO t0
|
||
INNER JOIN T_PRD_MOENTRY t0e ON t0.FID = t0E.FID
|
||
INNER JOIN T_PRD_MOENTRY_A t0e_a ON t0e_a.FENTRYID = t0e.FENTRYID
|
||
LEFT JOIN T_SAL_DELIVERYNOTICEENTRY t1e ON t1e.FENTRYID = t0e.FSRCBILLENTRYID AND t0e.FSRCBILLID = t0e.FSALEORDERID
|
||
WHERE 1 = 1
|
||
AND t0.FDOCUMENTSTATUS = 'C'
|
||
AND (t0e_a.FSTATUS < 5)
|
||
--AND t0e.FMATERIALID = 100258
|
||
AND t0.FBILLNO = 'MO000023'
|
||
|
||
/*取出所有审核状态的BOM,放入临时表中*/
|
||
SELECT
|
||
ID=IDENTITY(INT,1,1)
|
||
,T0.FID
|
||
,T0.FNUMBER
|
||
,T0.FMATERIALID
|
||
,ROW_NUMBER() OVER(PARTITION BY T0.FMATERIALID ORDER BY t0.FID DESC) AS ROWID
|
||
,t0.FDOCUMENTSTATUS
|
||
,t0.FYIELDRATE
|
||
INTO #BOMTmp
|
||
FROM T_ENG_BOM T0
|
||
INNER JOIN T_BD_MATERIAL TM ON t0.FMATERIALID=TM.FMATERIALID --物料表
|
||
WHERE (t0.FDOCUMENTSTATUS = 'C') AND (t0.FFORBIDSTATUS='A')
|
||
--AND tm.FNUMBER = 'TSH182H000208O'
|
||
AND tm.FMATERIALID IN (SELECT DISTINCT FMATERIALID FROM #TEMPMO)
|
||
ORDER BY FMATERIALID,FNUMBER
|
||
|
||
--/*在临时表中,同一个物料代码只保留一个最新版本的BOM*/
|
||
DELETE FROM #BOMTmp WHERE ROWID != 1
|
||
|
||
--查询出第一级产成品信息
|
||
INSERT INTO #YC_T_MRP(
|
||
FBOMNumber,FMATERIALID,物料编码,物料名称,成品率
|
||
,分子,分母,FQty,FLevle,FERPCLSID,FProMaterialId,FOrderNum
|
||
,FBOMID,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6,FParentNumber)
|
||
SELECT
|
||
t0.FNUMBER,T0.FMATERIALID,t1.FNUMBER '物料编码',t3.FNAME '物料名称',t0.FYIELDRATE '成品率'
|
||
,1 '分子',1 '分母',1 'FQty','0' 'FLevle',T2.FERPCLSID 'FERPCLSID',t1.FMATERIALID,t1.FNUMBER '物料编码'
|
||
,t0.FID 'FBOMID',0 'FSEQ1',0 'FSEQ2',0 'FSEQ3',0 'FSEQ4',0 'FSEQ5',0 'FSEQ6','' 'FParentNumber'
|
||
FROM T_ENG_BOM t0
|
||
INNER JOIN T_BD_MATERIAL t1 ON t0.FMATERIALID=t1.FMATERIALID --物料表
|
||
LEFT OUTER JOIN t_BD_MaterialBase t2 ON t1.FMATERIALID = t2.FMATERIALID --物料表
|
||
LEFT OUTER JOIN T_BD_MATERIAL_L t3 ON (t1.FMATERIALID = t3.FMATERIALID AND t3.FLocaleId = 2052)--物料表
|
||
INNER JOIN #BOMTmp t6 ON t0.FMATERIALID=t6.FMATERIALID AND t0.FNUMBER=t6.FNUMBER
|
||
WHERE 1=1
|
||
AND (t0.FDOCUMENTSTATUS = 'C')
|
||
ORDER BY T0.FNUMBER
|
||
|
||
--根据第一级产成品关联查询出第一级产成品下面的材料信息
|
||
DECLARE @num INT,@level int,@LoopCount int
|
||
SET @num = 1
|
||
SET @level =1
|
||
SET @LoopCount = 0;
|
||
|
||
INSERT INTO #YC_T_MRP(
|
||
FBOMNumber,FMATERIALID,物料编码,物料名称,成品率
|
||
,分子,分母,FQty,FLevle,FERPCLSID,FProMaterialId,FOrderNum
|
||
,FBOMID,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6,FParentNumber)
|
||
SELECT
|
||
t10.FNUMBER,t7.FMATERIALID,t7.FNUMBER '物料编码',T9.FNAME '物料名称',t10.FYIELDRATE '成品率'
|
||
,t6.FNUMERATOR '分子',t6.FDENOMINATOR '分母',ROUND(t6.FNUMERATOR/t6.FDENOMINATOR,10) 'FQty'
|
||
,@level AS 'FLevle',t8.FERPCLSID 'FERPCLSID',t5.FProMaterialId,T5.FOrderNum
|
||
,0 'FBOMID',T5.FSEQ1 'FSEQ1',t6.FSEQ 'FSEQ2',0 'FSEQ3',0 'FSEQ4',0 'FSEQ5',0 'FSEQ6',t5.物料编码 'FParentNumber'
|
||
FROM #YC_T_MRP t5
|
||
LEFT OUTER JOIN T_ENG_BOMCHILD t6 ON t5.FBOMID=t6.FID--BOM表分录
|
||
INNER JOIN T_BD_MATERIAL t7 ON t6.FMATERIALID=t7.FMATERIALID --物料表
|
||
LEFT OUTER JOIN t_BD_MaterialBase t8 ON t8.FMATERIALID = t7.FMATERIALID --物料表
|
||
LEFT OUTER JOIN T_BD_MATERIAL_L t9 ON (t6.FMATERIALID = t9.FMATERIALID AND t9.FLocaleId = 2052)--物料表
|
||
LEFT JOIN T_ENG_BOM t10 ON t10.FID=t6.FID--BOM表
|
||
WHERE (t7.FFORBIDSTATUS = 'A')
|
||
AND T5.FLevle = 0 AND T5.FERPCLSID >= 2
|
||
AND t10.FDOCUMENTSTATUS = 'C'
|
||
|
||
WHILE (@num > 0 AND @LoopCount < 10)
|
||
BEGIN
|
||
|
||
SELECT ID=IDENTITY(INT,1,1),T0.FID,T0.FNUMBER,T0.FMATERIALID
|
||
INTO #BOMTmp1 FROM #YC_T_MRP t1
|
||
INNER JOIN T_ENG_BOM t0 ON t1.FMATERIALID=t0.FMATERIALID--BOM表头
|
||
WHERE 1=1 AND (t0.FDOCUMENTSTATUS = 'C') AND (t0.FFORBIDSTATUS='A') AND T1.FLevle=@level AND T1.FERPCLSID>=2
|
||
|
||
DELETE FROM #BOMTmp1 WHERE id NOT IN (SELECT max(id) FROM #BOMTmp1 GROUP BY FMATERIALID)
|
||
|
||
INSERT INTO #YC_T_MRP(FBOMNumber,FMATERIALID,物料编码,物料名称,成品率,分子,分母,FQty,FLevle
|
||
,FERPCLSID,FProMaterialId,FOrderNum,FBOMID,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6,FParentNumber)
|
||
SELECT t5.FNUMBER,t7.FMATERIALID,t7.FNUMBER '物料编码',T9.FNAME '物料名称',t5.FYIELDRATE '成品率'
|
||
,t6.FNUMERATOR '分子',t6.FDENOMINATOR '分母',ROUND(t6.FNUMERATOR/t6.FDENOMINATOR,10) 'FQty'
|
||
,@level + 1 AS 'FLevle',t8.FERPCLSID 'FERPCLSID',t1.FProMaterialId,T1.FOrderNum,0 'FBOMID'
|
||
,t1.FSEQ1 'FSEQ1',t1.FSEQ2 'FSEQ2',t6.FSEQ 'FSEQ3',0 'FSEQ4',0 'FSEQ5',0 'FSEQ6',t1.物料编码 'FParentNumber'
|
||
FROM #YC_T_MRP t1
|
||
INNER JOIN T_ENG_BOM t5 ON t1.FMATERIALID=t5.FMATERIALID--BOM表头
|
||
LEFT OUTER JOIN T_ENG_BOMCHILD t6 ON t5.FID=t6.FID--BOM表分录
|
||
INNER JOIN T_BD_MATERIAL t7 ON t6.FMATERIALID=t7.FMATERIALID --物料表
|
||
LEFT OUTER JOIN t_BD_MaterialBase t8 ON t8.FMATERIALID = t7.FMATERIALID --物料表
|
||
LEFT OUTER JOIN T_BD_MATERIAL_L t9 ON (t6.FMATERIALID = t9.FMATERIALID AND t9.FLocaleId = 2052)--物料表
|
||
INNER JOIN #BOMTmp1 t10 ON t5.FMATERIALID=t10.FMATERIALID AND T5.FNUMBER=T10.FNUMBER
|
||
WHERE 1 = 1 AND (t7.FFORBIDSTATUS = 'A') AND T1.FLevle=@level AND T1.FERPCLSID>=2 AND t5.FDOCUMENTSTATUS = 'C'
|
||
|
||
SET @num = @@ROWCOUNT
|
||
SET @level += 1
|
||
SET @LoopCount += 1
|
||
|
||
DROP TABLE #BOMTmp1
|
||
|
||
END
|
||
|
||
UPDATE #YC_T_MRP SET BOM层级 =REPLICATE('.',FLevle)++ convert(varchar(4),FLevle)
|
||
|
||
--生产入库单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT
|
||
TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID fstockid,
|
||
ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'生产入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEREALQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_PRD_INSTOCK TS
|
||
INNER JOIN T_PRD_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_PRD_INSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00') AND (TS.FDATE <= '2019-11-12 23:59:59'))
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND TS.FENTRUSTINSTOCKID = 0)
|
||
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEREALQTY) fbaseqcqty
|
||
FROM T_PRD_INSTOCK TS
|
||
INNER JOIN T_PRD_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND TS.FENTRUSTINSTOCKID = 0)
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--入库单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.
|
||
FSTOCKSTATUSID fstockstatusid,'入库单' fbillname,
|
||
TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEUNITQTY fbaseinqty,0 fbaseoutqty
|
||
--t_STK_InStock
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
|
||
INNER JOIN T_STK_INSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00') AND (TS.FDATE <= '2019-11-12 23:59:59'))
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND TSF.FISGENFORIOS = '0')
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEUNITQTY) fbaseqcqty
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((
|
||
((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND TSF.FISGENFORIOS = '0')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.
|
||
FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--入库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,
|
||
FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FRECEIVEAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FRECEIVESTOCKID fstockid,ISNULL(TSE.FRECEIVESTOCKLOCID,0) fstocklocid,TSE.FRECEIVESTOCKSTATUS fstockstatusid,'入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSE.FBASEUNITQTY fbaseoutqty
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_INSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00')AND (TS.FDATE <= '2019-11-12 23:59:59'))
|
||
AND (TSE.FRECEIVESTOCKID > 0)) AND (TSE.FRECEIVESTOCKSTATUS > 0)) AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND TSF.FISGENFORIOS = '0')
|
||
AND TSE.FRECEIVESTOCKFLAG = '1')
|
||
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FRECEIVEAUXPROPID,0) fauxpropid,
|
||
TSE.FRECEIVESTOCKID fstockid,ISNULL(TSE.FRECEIVESTOCKLOCID,0) fstocklocid,
|
||
TSE.FRECEIVESTOCKSTATUS fstockstatusid,'初始数据',(0 - SUM(TSE.FBASEUNITQTY)) fbaseqcqty
|
||
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (TSE.FRECEIVESTOCKID > 0))
|
||
AND (TSE.FRECEIVESTOCKSTATUS > 0)) AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND TSF.FISGENFORIOS = '0') AND TSE.FRECEIVESTOCKFLAG = '1')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FRECEIVEOWNERTYPEID,TSE.FRECEIVEOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FRECEIVEAUXPROPID,0),
|
||
ISNULL(TSE.FRECEIVELOT_TEXT,' '),ISNULL(TSE.FRECEIVEMTONO,' '),TSE.FRECEIVESTOCKID,ISNULL(TSE.FRECEIVESTOCKLOCID,0),
|
||
TSE.FRECEIVESTOCKSTATUS,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--生产领料单
|
||
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,
|
||
FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
--生产领料单
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'生产领料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,0 fbaseinqty,TSED.FBASESTOCKACTUALQTY fbaseoutqty
|
||
FROM T_PRD_PICKMTRL TS INNER JOIN T_PRD_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
LEFT OUTER JOIN T_PRD_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND
|
||
TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(0 - TSED.FBASESTOCKACTUALQTY) fbaseqcqty
|
||
|
||
FROM T_PRD_PICKMTRL TS INNER JOIN T_PRD_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (
|
||
((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSED.FOWNERTYPEID,TSED.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSED.FKEEPERTYPEID,
|
||
TSED.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0),TS.FDATE
|
||
|
||
--销售出库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'销售出库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,0 fbaseinqty,TSE.FBASEUNITQTY fbaseoutqty
|
||
FROM T_SAL_OUTSTOCK TS INNER JOIN T_SAL_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_OUTSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_SAL_OUTSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_SAL_OUTSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TSEF.FRowType = 'Son' OR TSEF.FRowType = 'Standard'))
|
||
AND TSF.FISGENFORIOS = '0') AND (TMB.FERPCLSID <> '6'))
|
||
--AND TS.FBILLNO='SA1907050103'
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASEUNITQTY) fbaseqcqty
|
||
FROM T_SAL_OUTSTOCK TS INNER JOIN T_SAL_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_OUTSTOCKENTRY_F TSEF ON TSE.FENTRYID = TSEF.FENTRYID
|
||
INNER JOIN T_SAL_OUTSTOCKFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((
|
||
((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TSEF.FRowType = 'Son' OR TSEF.FRowType = 'Standard')) AND TSF.FISGENFORIOS = '0') AND (TMB.FERPCLSID <> '6'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,
|
||
TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--生产补料单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'生产补料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSEQ.FBASESTOCKACTUALQTY fbaseoutqty
|
||
FROM T_PRD_FEEDMTRL TS
|
||
INNER JOIN T_PRD_FEEDMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_FEEDMTRLDATA_Q TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
LEFT OUTER JOIN T_PRD_FEEDMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
--AND ts.FBILLNO IN ('M31910140010','M31907010006')
|
||
|
||
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'初始数据' fbillname,SUM(0 - TSEQ.FBASESTOCKACTUALQTY) fbaseqcqty
|
||
FROM T_PRD_FEEDMTRL TS INNER JOIN T_PRD_FEEDMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_FEEDMTRLDATA_Q TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1)
|
||
AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),
|
||
TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--生产退料单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'生产退料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,(0 - TSEA.FBASESTOCKQTY) fbaseoutqty
|
||
FROM T_PRD_RETURNMTRL TS
|
||
INNER JOIN T_PRD_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
LEFT OUTER JOIN T_PRD_RETURNMTRLENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A'))
|
||
--AND ts.FBILLNO='M21907200004'
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSEA.FBASESTOCKQTY) fbaseqcqty
|
||
FROM T_PRD_RETURNMTRL TS INNER JOIN T_PRD_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--退料单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,
|
||
0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'退料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,(0 - TSE.FBASEUNITQTY) fbaseinqty,0 fbaseoutqty
|
||
FROM T_PUR_MRB TS INNER JOIN T_PUR_MRBENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_MRBENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_MRBFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TM.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TSE.FSTOCKID > 0))
|
||
AND TSF.FISGENFORIOS = '0') AND (TSE.FSTOCKFLAG = '1' OR ((TS.FMRTYPE = 'B' AND TMB.FISINVENTORY = '1') AND (TSE.FStockStatusId <> TSE.FReceiveStockStatusId))))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(0 - TSE.FBASEUNITQTY) fbaseqcqty
|
||
FROM T_PUR_MRB TS INNER JOIN T_PUR_MRBENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_MRBFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TM.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1)
|
||
AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TSE.FSTOCKID > 0))
|
||
AND TSF.FISGENFORIOS = '0') AND (TSE.FSTOCKFLAG = '1' OR ((TS.FMRTYPE= 'B' AND TMB.FISINVENTORY = '1')
|
||
AND (TSE.FStockStatusId <> TSE.FReceiveStockStatusId))))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,''),ISNULL(TSE.FMTONO,''),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--收料单 库存更新标志 FSTOCKFLAG 0:未更新 1:已更新
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'收料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEUNITQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_PUR_RECEIVE TS INNER JOIN T_PUR_RECEIVEENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_RECEIVEENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_RECEIVEFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TMB.FMaterialId = TSE.FMaterialId
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND TMB.FISINVENTORY = '1')
|
||
AND (TSE.FSTOCKID > 0)) AND TSE.FSTOCKFLAG = '1')
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEUNITQTY) fbaseqcqty
|
||
|
||
FROM T_PUR_RECEIVE TS
|
||
INNER JOIN T_PUR_RECEIVEENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TSE.FSTOCKID > 0)) AND TSE.FSTOCKFLAG = '1')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--销售退货单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
--销售退货单
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'销售退货单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,(0 - TSE.FBASEUNITQTY) fbaseoutqty
|
||
FROM T_SAL_RETURNSTOCK TS INNER JOIN T_SAL_RETURNSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_RETURNSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_SAL_RETURNSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID INNER JOIN T_SAL_RETURNSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TSEF.FRowType = 'Son' OR TSEF.FRowType = 'Standard')) AND TSF.FISGENFORIOS = '0') AND (TMB.FERPCLSID <> '6'))
|
||
|
||
--AND TS.FBILLNO ='SB1908230003'
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEUNITQTY) fbaseqcqty
|
||
FROM T_SAL_RETURNSTOCK TS INNER JOIN T_SAL_RETURNSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_RETURNSTOCKENTRY_F TSEF ON TSE.FENTRYID = TSEF.FENTRYID
|
||
INNER JOIN T_SAL_RETURNSTOCKFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TSEF.FRowType = 'Son' OR TSEF.FRowType = 'Standard')) AND TSF.FISGENFORIOS = '0') AND (TMB.FERPCLSID <> '6'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
|
||
--简单生产入库单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'简单生产入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEREALQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_SP_INSTOCK TS INNER JOIN T_SP_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_SP_INSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEREALQTY) fbaseqcqty
|
||
FROM T_SP_INSTOCK TS INNER JOIN T_SP_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,
|
||
TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--简单生产领料单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'简单生产领料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSE.FBASEACTUALQTY fbaseoutqty
|
||
|
||
FROM T_SP_PICKMTRL TS INNER JOIN T_SP_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_SP_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',(0 - SUM(TSE.FBASEACTUALQTY)) fbaseqcqty
|
||
FROM T_SP_PICKMTRL TS INNER JOIN T_SP_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,
|
||
ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--简单生产退料单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,
|
||
0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'简单生产退料单' fbillname,TS.FID fbillid,TSE.FSEQ
|
||
fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,(0 - TSE.FBASEQTY) fbaseoutqty
|
||
|
||
FROM T_SP_RETURNMTRL TS INNER JOIN T_SP_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_SP_RETURNMTRLENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASEQTY) fbaseqcqty
|
||
FROM T_SP_RETURNMTRL TS INNER JOIN T_SP_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--组装拆卸单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'ASSEMBLY' THEN 'I' ELSE 'O' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'组装拆卸单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'ASSEMBLY' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'DASSEMBLY' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_STK_ASSEMBLY TS INNER JOIN T_STK_ASSEMBLYPRODUCT TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_STK_ASSEMBLYPRODUCT_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE
|
||
(((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'ASSEMBLY' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
|
||
FROM T_STK_ASSEMBLY TS INNER JOIN T_STK_ASSEMBLYPRODUCT TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,
|
||
TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--组装拆卸单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FDETAILID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'DASSEMBLY' THEN 'I' ELSE 'O' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'组装拆卸单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
|
||
CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'ASSEMBLY' THEN 0 ELSE TSE.FBASEQTY END fbaseinqty,CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'DASSEMBLY' THEN 0 ELSE TSE.FBASEQTY END fbaseoutqty
|
||
FROM T_STK_ASSEMBLY TS INNER JOIN T_STK_ASSEMBLYPRODUCT TSEH ON TSEH.FID = TS.FID
|
||
INNER JOIN T_STK_ASSEMBLYSUBITEM TSE ON TSE.FENTRYID = TSEH.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
LEFT OUTER JOIN T_STK_ASSEMBLYPRODUCT_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(CASE WHEN UPPER(TS.FAFFAIRTYPE) = 'DASSEMBLY' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
FROM T_STK_ASSEMBLY TS INNER JOIN T_STK_ASSEMBLYPRODUCT TSEH ON TSEH.FID = TS.FID
|
||
INNER JOIN T_STK_ASSEMBLYSUBITEM TSE ON TSE.FENTRYID = TSEH.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,
|
||
TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0),TS.FDATE
|
||
|
||
|
||
|
||
--批号调整单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN 'O' ELSE 'I' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSTOCKSTATUSID fstockstatusid,'批号调整单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_STK_LOTADJUST TS INNER JOIN T_STK_LOTADJUSTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00') AND (TS.FDATE <= '2019-11-12 23:59:59'))
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
|
||
FROM T_STK_LOTADJUST TS INNER JOIN T_STK_LOTADJUSTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,
|
||
ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--其他入库单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'其他入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,CASE WHEN TS.FSTOCKDIRECT = 'GENERAL' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END fbaseinqty,0 fbaseoutqty
|
||
|
||
FROM T_STK_MISCELLANEOUS TS INNER JOIN T_STK_MISCELLANEOUSENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_MISCELLANEOUSENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00') AND (TS.FDATE<= '2019-11-12 23:59:59'))
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN TS.FSTOCKDIRECT = 'GENERAL' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
FROM T_STK_MISCELLANEOUS TS INNER JOIN T_STK_MISCELLANEOUSENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,
|
||
ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--其他出库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'其他出库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,0 fbaseinqty,CASE WHEN TS.FSTOCKDIRECT = 'GENERAL' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END fbaseoutqty
|
||
FROM T_STK_MISDELIVERY TS
|
||
INNER JOIN T_STK_MISDELIVERYENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_MISDELIVERYENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP (FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN TS.FSTOCKDIRECT = 'GENERAL' THEN (0 - TSE.FBASEQTY) ELSE TSE.FBASEQTY END) fbaseqcqty
|
||
FROM T_STK_MISDELIVERY TS INNER JOIN T_STK_MISDELIVERYENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--受托加工材料入库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'受托加工材料入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,FBASEQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_STK_OEMINSTOCK TS
|
||
INNER JOIN T_STK_OEMINSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_OEMINSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--((TS.FDATE >= '2019-07-01 00:00:00') AND (TS.FDATE <= '2019-11-12 23:59:59'))
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(FBASEQTY) fbaseqcqty
|
||
FROM T_STK_OEMINSTOCK TS INNER JOIN T_STK_OEMINSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--受托加工材料退料单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'受托加工材料退料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,(0 - FBASEQTY) fbaseinqty,0 fbaseoutqty
|
||
|
||
FROM T_STK_OEMINSTOCKRTN TS
|
||
INNER JOIN T_STK_OEMINSTOCKRTNENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_OEMINSTOCKRTNENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND FRETURNTYPE = 'StockReMat')
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'',(0 - SUM(FBASEQTY)) fbaseqcqty
|
||
FROM T_STK_OEMINSTOCKRTN TS INNER JOIN T_STK_OEMINSTOCKRTNENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND FRETURNTYPE = 'StockReMat')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,
|
||
ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--形态转换单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN 'O' ELSE 'I' END fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'形态转换单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_STK_STATUSCONVERT TS
|
||
INNER JOIN T_STK_STATUSCONVERTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
FROM T_STK_STATUSCONVERT TS INNER JOIN T_STK_STATUSCONVERTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--库存状态转换单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,
|
||
CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN 'O' ELSE 'I' END fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'库存状态转换单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,
|
||
CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'A' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_STK_STOCKCONVERT TS INNER JOIN T_STK_STOCKCONVERTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STOCKCONVERTENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TSE.FCONVERTTYPE) = 'B' THEN TSE.FBASEQTY ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
FROM T_STK_STOCKCONVERT TS INNER JOIN T_STK_STOCKCONVERTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--盘盈单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'盘盈单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEGAINQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_STK_STKCOUNTGAIN TS
|
||
INNER JOIN T_STK_STKCOUNTGAINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND ((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(TSE.FBASEGAINQTY) fbaseqcqty
|
||
FROM T_STK_STKCOUNTGAIN TS INNER JOIN T_STK_STKCOUNTGAINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND ((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--盘亏单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'盘亏单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,0 fbaseinqty,TSE.FBASELOSSQTY fbaseoutqty
|
||
FROM T_STK_STKCOUNTLOSS TS INNER JOIN T_STK_STKCOUNTLOSSENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND ((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASELOSSQTY) fbaseqcqty
|
||
FROM T_STK_STKCOUNTLOSS TS INNER JOIN T_STK_STKCOUNTLOSSENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND ((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,
|
||
ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--直接调拨单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'I' ELSE 'O' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,
|
||
TSE.FDESTSTOCKSTATUSID fstockstatusid,'直接调拨单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'RETURN' THEN (0 - TSE.FBASEQTY) ELSE 0 END fbaseoutqty
|
||
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
|
||
|
||
WHERE (((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1')) AND TS
|
||
.FOBJECTTYPEID = 'STK_TransferDirect')
|
||
|
||
|
||
|
||
--初始数据
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TSE.FDESTSTOCKID fstockid,
|
||
ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END -
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TS.FISGENFORIOS <> '1')) AND TS.FOBJECTTYPEID = 'STK_TransferDirect')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FDESTSTOCKID,ISNULL(TSE.FDESTSTOCKLOCID,0),
|
||
TSE.FDESTSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FBOMID,TS.FDATE
|
||
|
||
|
||
|
||
--直接调拨单
|
||
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,
|
||
FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'O' ELSE 'I' END fstockio,
|
||
TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,
|
||
'直接调拨单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END fbaseinqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1')) AND TS.FOBJECTTYPEID = 'STK_TransferDirect')
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,
|
||
TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
|
||
SUM(CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END -
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END) fbaseqcqty
|
||
|
||
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TS.FISGENFORIOS <> '1')) AND TS.FOBJECTTYPEID = 'STK_TransferDirect')
|
||
GROUP BY TS.FSTOCKOUTORGID,TSE.FOWNERTYPEOUTID,TSE.FOWNEROUTID,TSE.FSRCMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSRCSTOCKID,ISNULL(TSE.FSRCSTOCKLOCID,0),TSE.FSRCSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEOUTID,TSE.FKEEPEROUTID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FSRCBOMID,TS.FDATE
|
||
|
||
|
||
--分步式调入单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'I' ELSE 'O' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,
|
||
TSE.FDESTSTOCKSTATUSID fstockstatusid,'分步式调入单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GEN
|
||
ERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'RETURN' THEN (0 - TSE.FBASEQTY) ELSE 0 END fbaseoutqty
|
||
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1')) AND TS.FOBJECTTYPEID = 'STK_TRANSFERIN')
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(TSE.FBASEQTY) fbaseqcqty
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TS.FISGENFORIOS <> '1')) AND TS.FOBJECTTYPEID = 'STK_TRANSFERIN')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FDESTLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FDESTSTOCKID,ISNULL(TSE.FDESTSTOCKLOCID,0),TSE.FDESTSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FBOMID,TS.FDATE
|
||
|
||
--分步式调入单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,'分步式调入单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,((0 - TSE.FBASEQTY) - TSET.FBASEPATHLOSSQTY) fbaseinqty,0 fbaseoutqty
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_T TSET ON TSE.FENTRYID = TSET.FENTRYID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1'))
|
||
AND TS.FVESTONWAY = 'A') AND TS.FOBJECTTYPEID = 'STK_TRANSFERIN')
|
||
|
||
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,'',SUM((0 - TSE.FBASEQTY) - TSET.FBASEPATHLOSSQTY) fbaseqcqty
|
||
FROM T_STK_STKTRANSFERIN TS INNER JOIN T_STK_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFERINENTRY_T TSET ON TSE.FENTRYID = TSET.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1)
|
||
AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1'))
|
||
AND TS.FVESTONWAY = 'A') AND TS.FOBJECTTYPEID = 'STK_TRANSFERIN')
|
||
GROUP BY TS.FSTOCKOUTORGID,TSE.FOWNERTYPEOUTID,TSE.FOWNEROUTID,TSE.FSRCMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FSRCMTONO,' '),
|
||
TSE.FSRCSTOCKID,ISNULL(TSE.FSRCSTOCKLOCID,0),TSE.FSRCSTOCKSTATUSID,TSE.FKEEPERTYPEOUTID,TSE.FKEEPEROUTID,TSE.FSRCPRODUCEDATE,TSE.FSRCEXPIRYDATE,TSE.FSRCBOMID,TS.FDATE
|
||
|
||
--分步式调出单
|
||
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'O' ELSE 'I' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSRCSTOCKSTATUSID fstockstatusid,'分步式调出单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'RETURN' THEN (0 - TSE.FBASEQTY) ELSE 0 END fbaseinqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
|
||
FROM T_STK_STKTRANSFEROUT TS INNER JOIN T_STK_STKTRANSFEROUTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFEROUTENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASEQTY) fbaseqcqty
|
||
FROM T_STK_STKTRANSFEROUTENTRY TSE INNER JOIN T_STK_STKTRANSFEROUT TS ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON
|
||
TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSRCSTOCKID,ISNULL(TSE.FSRCSTOCKLOCID,0),TSE.FSRCSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,
|
||
TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FBOMID,TS.FDATE
|
||
|
||
--分步式调出单
|
||
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,
|
||
'分步式调出单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_STK_STKTRANSFEROUT TS INNER JOIN T_STK_STKTRANSFEROUTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFEROUTENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1')) AND TS.FVESTONWAY = 'A')
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(TSE.FBASEQTY) fbaseqcqty
|
||
FROM T_STK_STKTRANSFEROUT TS INNER JOIN T_STK_STKTRANSFEROUTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TS.FISGENFORIOS <> '1')) AND TS.FVESTONWAY = 'A')
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSRCSTOCKID,ISNULL(TSE.FSRCSTOCKLOCID,0),
|
||
TSE.FDESTSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FBOMID,TS.FDATE
|
||
|
||
|
||
--分步式调出单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKINORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FDESTMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FDESTSTOCKID fstockid,
|
||
ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,
|
||
'分步式调出单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_STK_STKTRANSFEROUT TS INNER JOIN T_STK_STKTRANSFEROUTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_STKTRANSFEROUTENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FDESTMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
|
||
WHERE (((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKINORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
AND (TS.FISGENFORIOS <> '1')) AND TS.FVESTONWAY = 'B')
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKINORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FDESTMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(TSE.FBASEQTY) fbaseqcqty
|
||
FROM T_STK_STKTRANSFEROUT TS INNER JOIN T_STK_STKTRANSFEROUTENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FDESTMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKINORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')) AND (TS.FISGENFORIOS <> '1')) AND TS.FVESTONWAY = 'B')
|
||
GROUP BY TS.FSTOCKINORGID,TSE.FOWNERTYPEINID,TSE.FOWNERINID,TSE.FDESTMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FDESTLOT_TEXT,' '),ISNULL(TSE.FDESTMTONO,' '),TSE.FDESTSTOCKID,
|
||
ISNULL(TSE.FDESTSTOCKLOCID,0),TSE.FDESTSTOCKSTATUSID,TSE.FKEEPERTYPEINID,TSE.FKEEPERINID,TSE.FDESTPRODUCEDATE,TSE.FDESTEXPIRYDATE,ISNULL(TSE.FDESTBOMID,0),TS.FDATE
|
||
|
||
|
||
|
||
--生产线在制仓库调拨单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'I' ELSE 'O' END fstockio,
|
||
TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,
|
||
TSE.FDESTSTOCKSTATUSID fstockstatusid,'生产线在制仓库调拨单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseinqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'RETURN' THEN (0 - TSE.FBASEQTY) ELSE 0 END fbaseoutqty
|
||
FROM T_REM_STKTRANSFERIN TS INNER JOIN T_REM_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FDESTSTOCKID fstockid,ISNULL(TSE.FDESTSTOCKLOCID,0) fstocklocid,TSE.FDESTSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END - CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END) fbaseqcqty
|
||
|
||
FROM T_REM_STKTRANSFERIN TS INNER JOIN T_REM_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FDESTSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FDESTLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),
|
||
TSE.FDESTSTOCKID,ISNULL(TSE.FDESTSTOCKLOCID,0),TSE.FDESTSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FBOMID,TS.FDATE
|
||
|
||
|
||
|
||
--生产线在制仓库调拨单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 'O' ELSE 'I' END fstockio,
|
||
TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,
|
||
TSE.FSRCSTOCKSTATUSID fstockstatusid,
|
||
'生产线在制仓库调拨单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END fbaseinqty,
|
||
CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END fbaseoutqty
|
||
FROM T_REM_STKTRANSFERIN TS
|
||
INNER JOIN T_REM_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_STKTRANSFERINENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKOUTORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FSRCMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSRCSTOCKID fstockid,ISNULL(TSE.FSRCSTOCKLOCID,0) fstocklocid,TSE.FSRCSTOCKSTATUSID fstockstatusid,'初始数据',
|
||
SUM(CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN 0 ELSE (0 - TSE.FBASEQTY) END - CASE WHEN UPPER(TS.FTRANSFERDIRECT) = 'GENERAL' THEN TSE.FBASEQTY ELSE 0 END) fbaseqcqty
|
||
FROM T_REM_STKTRANSFERIN TS INNER JOIN T_REM_STKTRANSFERINENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FSRCMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSRCSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKOUTORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKOUTORGID,TSE.FOWNERTYPEOUTID,TSE.FOWNEROUTID,TSE.FSRCMATERIALID,ISNULL(TSE.FAUXPROPID,0),
|
||
ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSRCSTOCKID,ISNULL(TSE.FSRCSTOCKLOCID,0),TSE.FSRCSTOCKSTATUSID,TSE.FKEEPERTYPEOUTID,TSE.FKEEPEROUTID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,TSE.FSRCBOMID,TS.FDATE
|
||
|
||
|
||
--委外补料单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'委外补料单' fbillname,TS.FID fbillid,
|
||
TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSEQ.FBASESTOCKACTUALQTY fbaseoutqty
|
||
FROM T_SUB_FEEDMTRL TS INNER JOIN T_SUB_FEEDMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_FEEDMTRLENTRY_Q TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
LEFT OUTER JOIN T_SUB_FEEDMTRLENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
|
||
'初始数据',SUM(0 - TSEQ.FBASESTOCKACTUALQTY) fbaseqcqty
|
||
FROM T_SUB_FEEDMTRL TS INNER JOIN T_SUB_FEEDMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_FEEDMTRLENTRY_Q TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,
|
||
TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--委外领料单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'委外领料单' fbillname,TS.FID fbillid,
|
||
TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSE.FBASESTOCKACTUALQTY fbaseoutqty
|
||
FROM T_SUB_PICKMTRL TS INNER JOIN T_SUB_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_PICKMTRLDATA_A TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
LEFT OUTER JOIN T_SUB_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASESTOCKACTUALQTY) fbaseqcqty
|
||
FROM T_SUB_PICKMTRL TS INNER JOIN T_SUB_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_PICKMTRLDATA_A TSEQ ON (TSE.FID = TSEQ.FID AND TSE.FENTRYID = TSEQ.FENTRYID)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A')AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSEQ.FOWNERTYPEID,TSEQ.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),
|
||
TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSEQ.FKEEPERTYPEID,TSEQ.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--委外退料单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'委外退料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,
|
||
0 fbaseinqty,(0 - TSE.FBASESTOCKQTY) fbaseoutqty
|
||
FROM T_SUB_RETURNMTRL TS INNER JOIN T_SUB_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
LEFT OUTER JOIN T_SUB_RETURNMTRLENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSE.FBASESTOCKQTY) fbaseqcqty
|
||
FROM T_SUB_RETURNMTRL TS INNER JOIN T_SUB_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,
|
||
TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSEA.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--生产线产品入库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,
|
||
'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'生产线产品入库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,TSE.FBASEREALQTY fbaseinqty,0 fbaseoutqty
|
||
FROM T_REM_INSTOCK TS INNER JOIN T_REM_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_REM_INSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(TSE.FBASEREALQTY) fbaseqcqty
|
||
FROM T_REM_INSTOCK TS INNER JOIN T_REM_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
---生产线产品退库单
|
||
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,
|
||
FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TS.FDATE fdate,TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'生产线产品退库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,
|
||
0 fbaseqcqty,(0 - TSE.FBASEREALQTY) fbaseinqty,0 fbaseoutqty
|
||
FROM T_REM_OUTSTOCK TS INNER JOIN T_REM_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_REM_OUTSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(TSE.FBASEREALQTY) fbaseqcqty
|
||
FROM T_REM_OUTSTOCK TS INNER JOIN T_REM_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,
|
||
ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--生产线领料单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,
|
||
'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'生产线领料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS
|
||
.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSED.FBASESTOCKACTUALQTY fbaseoutqty
|
||
|
||
FROM T_REM_PICKMTRL TS INNER JOIN T_REM_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
LEFT OUTER JOIN T_REM_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSED.FBASESTOCKACTUALQTY) fbaseqcqty
|
||
FROM T_REM_PICKMTRL TS INNER JOIN T_REM_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1)
|
||
AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSED.FOWNERTYPEID,TSED.FOWNERID,TSE.FMATERIALID,
|
||
ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSED.FKEEPERTYPEID,TSED.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0),TS.FDATE
|
||
|
||
|
||
--生产线退料单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'生产线退料单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,(0 - TSEA.FBASESTOCKQTY) fbaseoutqty
|
||
|
||
FROM T_REM_RETURNMTRL TS INNER JOIN T_REM_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
LEFT OUTER JOIN T_REM_RETURNMTRLENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'初始数据',SUM(TSEA.FBASESTOCKQTY) fbaseqcqty
|
||
FROM T_REM_RETURNMTRL TS INNER JOIN T_REM_RETURNMTRLENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_REM_RETURNMTRLENTRY_A TSEA ON TSE.FENTRYID = TSEA.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),
|
||
TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
|
||
--委外超耗单
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'O' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'委外超耗单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,0 fbaseinqty,TSE.FBASEUNITQTY fbaseoutqty
|
||
|
||
FROM T_SUB_EXCONSUME TS INNER JOIN T_SUB_EXCONSUMEENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_SUB_EXCONSUMEENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASEUNITQTY) fbaseqcqty
|
||
FROM T_SUB_EXCONSUME TS INNER JOIN T_SUB_EXCONSUMEENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOwnerTypeId,TSE.FOwnerId,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),
|
||
ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
--生产退库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'生产退库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,TS.FBILLNO fbillno,0 fbaseqcqty,(0 - TSE.FBASEREALQTY) fbaseinqty,0 fbaseoutqty
|
||
FROM
|
||
T_PRD_RESTOCK TS INNER JOIN T_PRD_RESTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_RESTOCKENTRY_A TSEA ON TSE.FEntryID = TSEA.FEntryID
|
||
LEFT OUTER JOIN T_PRD_RESTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A')
|
||
AND TS.FCANCELSTATUS = 'A')) AND TS.FEntrustRetStockId = 0)
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASEREALQTY) fbaseqcqty
|
||
FROM T_PRD_RESTOCK TS INNER JOIN T_PRD_RESTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE ((((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1)
|
||
AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS= 'A')) AND TS.FEntrustRetStockId = 0)
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),
|
||
TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
|
||
--简单生产退库单
|
||
|
||
INSERT INTO #TMP (FSTOCKORGID,FBILLENTRYID,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FDATE,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBILLID,FBILLSEQID,FBILLNO,FBASEQCQTY,FBASEINQTY,FBASEOUTQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TSE.FENTRYID fbillentryid,0 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,
|
||
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,'简单生产退库单' fbillname,TS.FID fbillid,TSE.FSEQ fbillseqid,
|
||
TS.FBILLNO fbillno,0 fbaseqcqty,(0 - TSE.FBASEOUTQTY) fbaseinqty,0 fbaseoutqty
|
||
|
||
FROM T_SP_OUTSTOCK TS INNER JOIN T_SP_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_SP_OUTSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_SP_OUTSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
|
||
|
||
|
||
--初始数据
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FDATE fdate,-200 forderby,'I' fstockio,TSE.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TSE.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'初始数据',SUM(0 - TSE.FBASEOUTQTY) fbaseqcqty
|
||
FROM T_SP_OUTSTOCK TS INNER JOIN T_SP_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON TSE.FSTOCKID = TBS.FSTOCKID
|
||
WHERE (((TS.FDATE >= @FClosedate) AND (TS.FDATE < @FSDate))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A'))
|
||
GROUP BY TS.FSTOCKORGID,TSE.FOWNERTYPEID,TSE.FOWNERID,TS.FDATE,TSE.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TSE.FLOT_TEXT,' '),ISNULL(TSE.FMTONO,' '),TSE.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,
|
||
TSE.FKEEPERTYPEID,TSE.FKEEPERID,TSE.FPRODUCEDATE,TSE.FEXPIRYDATE,ISNULL(TSE.FBOMID,0)
|
||
|
||
INSERT INTO #TMP ( FSTOCKORGID,FDATE,FORDERBY,FSTOCKIO,FMATERIALID,FAUXPROPID,FSTOCKID,FSTOCKLOCID,FSTOCKSTATUSID,FBILLNAME,FBASEQCQTY)
|
||
|
||
SELECT TSE.FSTOCKORGID fstockorgid,TSE.FBALDATE fdate,-200 forderby,
|
||
'I' fstockio,TM.FMATERIALID fmaterialid,ISNULL(TSE.FAUXPROPID,0) fauxpropid,
|
||
TBS.FSTOCKID fstockid,ISNULL(TSE.FSTOCKLOCID,0) fstocklocid,TSE.FSTOCKSTATUSID fstockstatusid,
|
||
'库存余额表',SUM(TSE.FBASEENDQTY) fbaseqcqty
|
||
FROM T_STK_INVBAL TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMASTERID = TSE.FMATERIALID AND TM.FUSEORGID = TSE.FSTOCKORGID)
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.FSTOCKID AND TBS.FUSEORGID = TSE.FSTOCKORGID)
|
||
LEFT OUTER JOIN T_ENG_BOM TB ON (TB.FMASTERID = TSE.FBOMID AND TB.FUSEORGID = TSE.FSTOCKORGID)
|
||
LEFT OUTER JOIN V_ITEMCLASS_OWNER VO ON ((VO.FMASTERID = TSE.FOWNERID AND VO.FFORMID = TSE.FOWNERTYPEID) AND (VO.FUSEORGID = TSE.FSTOCKORGID OR VO.FUSEORGID = 0
|
||
OR EXISTS (SELECT 1 FROM T_META_BASEDATATYPE BT WHERE (BT.FBASEDATATYPEID = VO.FFORMID AND BT.FSTRATEGYTYPE = 1))))
|
||
LEFT OUTER JOIN V_ITEMCLASS_OWNER_L VO_L ON (VO.FITEMID = VO_L.FITEMID AND VO_L.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN V_ITEMCLASS_KEEPER VK ON ((VK.FMASTERID = TSE.FKEEPERID AND VK.FFORMID = TSE.FKEEPERTYPEID) AND (VK.FUSEORGID = TSE.FSTOCKORGID OR VK.FUSEORGID = 0
|
||
OR EXISTS (SELECT 1 FROM T_META_BASEDATATYPE BT WHERE (BT.FBASEDATATYPEID = VK.FFORMID AND BT.FSTRATEGYTYPE = 1))))
|
||
LEFT OUTER JOIN V_ITEMCLASS_KEEPER_L VK_L ON (VK.FITEMID = VK_L.FITEMID AND VK_L.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_LOTMASTER TBLM ON (ISNULL(TSE.FLOT,0) = TBLM.FMASTERID AND TBLM.FUSEORGID IN (1))
|
||
|
||
WHERE ((TSE.FSTOCKORGID IN (1) AND (FBALTYPE IN(0,1) AND (FSTOCKORGID = 1 AND TSE.FBALDATE =@FCloseBALDate )))
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
AND (TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TBS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
AND TM.FFORBIDSTATUS = 'A')
|
||
|
||
|
||
GROUP BY TSE.FSTOCKORGID,TSE.FOWNERTYPEID,VO.FITEMID,TSE.FBALDATE,TM.FMATERIALID,ISNULL(TSE.FAUXPROPID,0),ISNULL(TBLM.FNUMBER,' '),ISNULL(TSE.FMTONO,' '),
|
||
TBS.FSTOCKID,ISNULL(TSE.FSTOCKLOCID,0),TSE.FSTOCKSTATUSID,TSE.FKEEPERTYPEID,VK.FITEMID,TSE.FLOT,TMS.FISBATCHMANAGE,TMS.FISKFPERIOD,
|
||
TMS.FISEXPPARTOFLOT,TBLM.FPRODUCEDATE,TSE.FPRODUCEDATE,TBLM.FEXPIRYDATE,TSE.FEXPIRYDATE,ISNULL(TB.FID,0)
|
||
|
||
--合并所有出入库数据
|
||
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp1
|
||
FROM #TMP
|
||
--WHERE FDATE <='2019-08-30'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
|
||
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码
|
||
FROM #tmp1 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = TSE.FMATERIALID AND TM.FUSEORGID = TSE.FSTOCKORGID)
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.FSTOCKID AND TBS.FUSEORGID = TSE.FSTOCKORGID)
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.FSTOCKID AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
|
||
--上期结存数
|
||
--SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
--INTO #tmp2
|
||
|
||
--FROM #TMP
|
||
----WHERE FDATE <=@FSDate
|
||
--GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
--ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
|
||
--SELECT *
|
||
UPDATE t1 SET t1.上期结存=t2.FBASEQCQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp1 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--期末结存
|
||
UPDATE t1 SET t1.期末结存=t2.FBASEQCQTY+t2.FBASEINQTY-t2.FBASEOUTQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN
|
||
#tmp1 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--本期采购入库
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp4 FROM #TMP TS WHERE FORDERBY<>'-200' AND fstockio='I' AND ( FBILLNAME NOT like'%调拨单%' AND FBILLNAME<>'形态转换单')
|
||
AND ((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--TS.FDATE >='2019-08-30'AND TS.FDATE <='2019-11-12'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,
|
||
FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
--本期采购入库
|
||
|
||
UPDATE t1 SET t1.本期采购入库=t2.FBASEINQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp4 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--本期耗用
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp5 FROM #TMP TS WHERE fstockio='O' AND ( FBILLNAME NOT like'%调拨单%' AND FBILLNAME<>'形态转换单')
|
||
AND ((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--TS.FDATE >='2019-08-30'AND TS.FDATE <='2019-11-12'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
--本期耗用
|
||
|
||
UPDATE t1 SET t1.本期耗用=t2.FBASEOUTQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp5 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
|
||
--仓库拨入数量仓库拨出数量
|
||
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp6 FROM #TMP TS WHERE FORDERBY<>'-200' AND ( FBILLNAME like'%调拨单%' )
|
||
AND ((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--TS.FDATE >='2019-08-30'AND TS.FDATE <='2019-11-12'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
|
||
--仓库拨入数量--仓库拨出数量
|
||
|
||
UPDATE t1 SET t1.仓库拨入数量=t2.FBASEINQTY,t1.仓库拨出数量=t2.FBASEOUTQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp6 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
|
||
--领料数量
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp7 FROM #TMP TS WHERE ( FBILLNAME IN('生产领料单','委外领料单' ))
|
||
AND ((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--TS.FDATE >='2019-08-30'AND TS.FDATE <='2019-11-12'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
|
||
--领料数量
|
||
UPDATE t1 SET t1.领料数量=t2.FBASEOUTQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp7 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
|
||
--销售出库数量
|
||
|
||
SELECT FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID,SUM( FBASEQCQTY)FBASEQCQTY,SUM(FBASEINQTY)FBASEINQTY,SUM(FBASEOUTQTY) FBASEOUTQTY
|
||
INTO #tmp8 FROM #TMP TS WHERE ( FBILLNAME ='销售出库单' )
|
||
AND ((TS.FDATE >= @FSDate) AND (TS.FDATE <= @FEDate))
|
||
--TS.FDATE >='2019-08-30'AND TS.FDATE <='2019-11-12'
|
||
GROUP BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
ORDER BY FSTOCKORGID,FMATERIALID,FAUXPROPID,FSTOCKID
|
||
|
||
--销售出库数量
|
||
UPDATE t1 SET t1.销售出库数量=t2.FBASEOUTQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmp8 t2 ON t1.物料内码=t2.FMATERIALID AND t1.仓库内码=t2.FSTOCKID AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--受订量
|
||
--销售订单受订量
|
||
--*******************************************
|
||
|
||
--查询订单数
|
||
--(C.FBASEREMAINOUTQTY+C.FBaseReturnQty)累计退库数量+剩余未出数量
|
||
SELECT (A.FBILLNO) AS 销售单号,(A.FID) 销售内码,(B.FENTRYID) 销售分录,(B.FSEQ) 销售序号,
|
||
B.FMATERIALID AS 物料内码,B.FBASEUNITQTY 订单数,(C.FBASEREMAINOUTQTY+C.FBaseReturnQty) AS 未出数量,FBaseReturnQty,
|
||
ISNULL(B.FSTOCKID,0) 仓库内码,B.FAUXPROPID,A.FCLOSESTATUS,FCLOSEDATE,A.FDATE,B.FMRPCLOSESTATUS 业务关闭
|
||
INTO #tmpSal
|
||
FROM T_SAL_ORDER A
|
||
INNER JOIN T_SAL_ORDERENTRY B ON A.FID =B.FID
|
||
LEFT JOIN T_SAL_ORDERENTRY_R C ON C.FID=B.FID AND C.FENTRYID =B.FENTRYID
|
||
LEFT JOIN T_SAL_ORDERENTRY_E D ON D.FID=B.FID AND D.FENTRYID =B.FENTRYID
|
||
|
||
WHERE 1=1 AND A.FCANCELSTATUS='A' AND A.FDOCUMENTSTATUS='C' --AND B.FMRPTERMINATESTATUS='A'
|
||
AND (B.FTERMINATEDATE >@FEDate OR ISNULL(B.FTERMINATEDATE,'') ='')
|
||
AND (FCLOSEDATE>@FEDate OR ISNULL(FCLOSEDATE,'')='')--关闭日期在开始之前单据不考虑
|
||
AND A.FDATE <=@FEDate --AND A.FBILLNO='SO1909200018'
|
||
ORDER BY A.FDATE,A.FID,B.FENTRYID,B.FMATERIALID
|
||
|
||
|
||
|
||
--更新未出数量
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未出数量=未出数量+t2.fbaseoutqty
|
||
FROM #tmpSal t1
|
||
INNER JOIN (
|
||
SELECT TSR.FSOORDERNO,TSR.FSOENTRYID,TSE.FMATERIALID,SUM(TSE.FBASEUNITQTY) fbaseoutqty
|
||
FROM T_SAL_OUTSTOCK TS INNER JOIN T_SAL_OUTSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_OUTSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_SAL_OUTSTOCKFIN TSF ON TSE.FID = TSF.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID
|
||
INNER JOIN T_SAL_OUTSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
|
||
WHERE TS.FDATE>@FEDate AND
|
||
( TS.FCANCELSTATUS = 'A' AND TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
GROUP BY TSR.FSOORDERNO,TSR.FSOENTRYID,TSE.FMATERIALID ) t2 ON t2.FSOORDERNO =t1.销售单号 AND t2.FSOENTRYID=t1.销售分录 AND t1.物料内码=t2.FMATERIALID
|
||
|
||
--销售出库退货
|
||
--销售退货单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未出数量=未出数量+t2.fbaseoutqty
|
||
FROM #tmpSal t1
|
||
INNER JOIN (
|
||
SELECT TSE.FORDERNO,TSE.FSOENTRYID,TSE.FMATERIALID,SUM((TSE.FBASEUNITQTY)) fbaseoutqty
|
||
FROM T_SAL_RETURNSTOCK TS INNER JOIN T_SAL_RETURNSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SAL_RETURNSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_SAL_RETURNSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TSE.FMATERIALID = TMB.FMATERIALID INNER JOIN T_SAL_RETURNSTOCKENTRY_R TSR ON TSR.FENTRYID = TSE.FENTRYID
|
||
|
||
WHERE TS.FDATE>@FEDate
|
||
AND ( TS.FCANCELSTATUS = 'A' AND TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
GROUP BY TSE.FORDERNO,TSE.FSOENTRYID,TSE.FMATERIALID
|
||
) t2 ON t2.FORDERNO =t1.销售单号 AND t2.FSOENTRYID=t1.销售分录 AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
|
||
SELECT 物料内码,订单数,未出数量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #tmpSal1 FROM #tmpSal B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 )
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
|
||
ORDER BY 物料内码
|
||
|
||
|
||
SELECT 物料内码,订单数,未出数量,FAUXPROPID,仓库内码
|
||
INTO #tmpSal3 FROM #tmpSal1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
--LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
--LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,SUM(订单数)订单数,SUM(未出数量)未出数量,FAUXPROPID,仓库内码
|
||
INTO #tmpSal2 FROM #tmpSal3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
--销售订单受订量
|
||
UPDATE t1 SET t1.受订量=t2.未出数量
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmpSal2 t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,受订量)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS
|
||
物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未出数量)
|
||
FROM #tmpSal2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = TSE.物料内码 )
|
||
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
--*******************************************
|
||
|
||
|
||
|
||
--在途量
|
||
--************************************************
|
||
|
||
--采购订单
|
||
SELECT ddd.FPurchaseOrgID fstockorgid,ddd.FBILLNO 采购订单,ddd.FID AS 采购内码,B.FENTRYID 采购订单分录,b.FMATERIALID 物料内码,
|
||
ISNULL(b.FAUXPROPID,0) fauxpropid,ddd.FDATE fdate,TMS.FSTOCKID 仓库内码,FBASEUNITQTY 采购数量,
|
||
FREMAINSTOCKINQTY 剩余入库数量,FBASESTOCKINQTY 入库数量,ddd.FCLOSEDATE
|
||
INTO #tmppoorder
|
||
FROM t_pur_poorderentry b
|
||
INNER JOIN t_pur_poorder ddd ON (ddd.FID = b.FID AND FbusinessType NOT IN ('ZCCG','FYCG'))
|
||
INNER JOIN t_pur_poorderentry_r r ON b.fentryid = r.fentryid
|
||
INNER JOIN t_pur_poorderentry_d td ON b.fentryid = td.fentryid
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON b.FMATERIALID = TMS.FMATERIALID
|
||
WHERE (ddd.FPurchaseOrgID IN (1) AND (((ddd.FPurchaseOrgID IN (1))
|
||
AND (ddd.FDATE <=@FEDate)) AND ddd.fdocumentStatus = 'C'))
|
||
AND (b.FTERMINATEDATE >@FEDate OR ISNULL(b.FTERMINATEDATE,'') ='')
|
||
AND (ddd.FCLOSEDATE>@FEDate or ISNULL(ddd.FCLOSEDATE,'')='')
|
||
|
||
--入库单
|
||
--SELECT *
|
||
|
||
UPDATE t1 SET t1.剩余入库数量=剩余入库数量+t2.fbaseinqty
|
||
FROM #tmppoorder t1
|
||
INNER JOIN (
|
||
SELECT TSE.FMATERIALID,tse.FPOORDERENTRYID,tse.FPOORDERNO,SUM(TSE.FBASEUNITQTY) fbaseinqty
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
|
||
INNER JOIN T_STK_INSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKENTRY_LK TSEL ON ( TSE.FENTRYID = TSEL.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
WHERE 1=1 AND TS.FDATE > @FEDate
|
||
AND (TS.FSTOCKORGID IN (1) ) AND TM.FFORBIDSTATUS = 'A' AND TS.FCANCELSTATUS = 'A' AND TS.FDOCUMENTSTATUS IN ('C')
|
||
GROUP BY TSE.FPOORDERNO,TSE.FPOORDERENTRYID,TSE.FMATERIALID
|
||
)t2 ON t2.FPOORDERNO =t1.采购订单 AND t2.FPOORDERENTRYID=t1.采购订单分录 AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
--退料单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.剩余入库数量=剩余入库数量-t2.fbaseinqty
|
||
FROM #tmppoorder t1
|
||
INNER JOIN(
|
||
SELECT tse.FPOORDERENTRYID,tse.FORDERNO,TSE.FMATERIALID fmaterialid,SUM( TSE.FBASEUNITQTY) fbaseinqty
|
||
|
||
FROM T_PUR_MRB TS INNER JOIN T_PUR_MRBENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_MRBENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_MRBFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TM.FMATERIALID = TMB.FMATERIALID
|
||
WHERE 1=1 AND (TS.FDATE >@FEDate)
|
||
AND TS.FDOCUMENTSTATUS IN ('C') AND TM.FFORBIDSTATUS = 'A' AND TS.FCANCELSTATUS = 'A' AND (TSE.FSTOCKID > 0)
|
||
AND TSF.FISGENFORIOS = '0'AND (TSE.FSTOCKFLAG = '1' OR (TS.FMRTYPE = 'B' AND TMB.FISINVENTORY = '1') )
|
||
GROUP BY tse.FPOORDERENTRYID,tse.FORDERNO,TSE.FMATERIALID
|
||
)t2 ON t2.FORDERNO =t1.采购订单 AND t2.FPOORDERENTRYID=t1.采购订单分录 AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
--更新和新增在途量数据
|
||
|
||
SELECT 物料内码,采购数量,剩余入库数量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #tmppoorder1 FROM #tmppoorder B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT
|
||
JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
|
||
SELECT 物料内码,采购数量,剩余入库数量,FAUXPROPID,仓库内码
|
||
INTO #tmppoorder3 FROM #tmppoorder1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK
|
||
ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
|
||
SELECT 物料内码,SUM(采购数量)采购数量,SUM(剩余入库数量)剩余入库数量,FAUXPROPID,仓库内码
|
||
INTO #tmppoorder2 FROM #tmppoorder3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
|
||
--在途量
|
||
UPDATE t1 SET t1.在途量=t2.剩余入库数量
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmppoorder2 t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,在途量)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(剩余入库数量)
|
||
FROM #tmppoorder2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER
|
||
JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE 剩余入库数量<>0 AND
|
||
NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
|
||
|
||
|
||
|
||
--************************************************
|
||
|
||
--在制量
|
||
--*************************************************
|
||
--查询截止结束日期之前所有生产单
|
||
SELECT (MO.FBILLNO) 生产单号,ME.FPRODUCTTYPE,
|
||
(MO.FID) 生产内码,(ME.FENTRYID) 生产单分录,MA.FCONVEYDATE,ME.FMATERIALID 物料内码,
|
||
ISNULL(ME.FSTOCKID,0) 仓库内码,ME.FAUXPROPID,MO.FDATE,ME.FSEQ,(ME.FQTY) 生产数量,
|
||
--MQ.FBASENOSTOCKINQTY 未入库数量
|
||
(CASE WHEN (MQ.FBASENOSTOCKINQTY)>0 THEN (MQ.FBASENOSTOCKINQTY) ELSE 0 END) AS 未入库数量,MQ.FBASERESTKQTY 退库数量
|
||
|
||
INTO #tmpMO
|
||
FROM T_PRD_MO MO
|
||
INNER JOIN T_PRD_MOENTRY ME ON MO.FID =ME.FID
|
||
LEFT JOIN T_PRD_MOENTRY_A MA ON MA.FID =ME.FID AND ME.FENTRYID =MA.FENTRYID
|
||
LEFT JOIN T_PRD_MOENTRY_Q MQ ON MQ.FID =ME.FID AND ME.FENTRYID =MQ.FENTRYID
|
||
WHERE 1=1 AND MO.FCANCELSTATUS='A' AND MO.FDOCUMENTSTATUS='C' AND ME.FPRODUCTTYPE =1
|
||
--AND MO.FBILLNO IN('MO1909090271','MO1905070262')
|
||
AND MO.FDATE <=@FEDate AND ISNULL(MA.FCONVEYDATE,'')<>''
|
||
AND (FCLOSEDATE>@FEDate OR ISNULL(FCLOSEDATE,'')='')
|
||
|
||
|
||
--截止日期之后生成的生产入库单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未入库数量=未入库数量+t2.fbaseInqty
|
||
FROM #tmpMO t1
|
||
INNER JOIN(
|
||
SELECT TSE.FMATERIALID,TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,SUM(TSE.FBASEREALQTY) fbaseInqty
|
||
FROM T_PRD_INSTOCK TS INNER JOIN T_PRD_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
LEFT OUTER JOIN T_PRD_INSTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
WHERE 1=1
|
||
AND TS.FDATE > @FEDate AND (TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A' AND TS.FCANCELSTATUS = 'A'
|
||
--AND TS.FBILLNO='MM1909090128'
|
||
GROUP BY TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,TSE.FMATERIALID
|
||
--ORDER BY TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,TSE.FMATERIALID
|
||
) t2 ON t1.生产内码=t2.FMOID AND t1.生产单分录=t2.FMOENTRYID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
--截止日期之后生成的生产退库单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未入库数量=未入库数量-t2.fbaseOutqty
|
||
FROM #tmpMO t1
|
||
INNER JOIN(
|
||
SELECT TSE.FMATERIALID fmaterialid,TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,SUM(TSE.FBASEREALQTY) fbaseOutqty
|
||
FROM T_PRD_RESTOCK TS INNER JOIN T_PRD_RESTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_RESTOCKENTRY_A TSEA ON TSE.FEntryID = TSEA.FEntryID
|
||
LEFT OUTER JOIN T_PRD_RESTOCKENTRY_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
WHERE 1=1
|
||
AND TS.FDATE > @FEDate
|
||
AND (TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C')) AND TM.FFORBIDSTATUS = 'A'
|
||
AND TS.FCANCELSTATUS = 'A' AND TS.FEntrustRetStockId = 0
|
||
GROUP BY TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,TSE.FMATERIALID
|
||
) t2 ON t1.生产内码=t2.FMOID AND t1.生产单分录=t2.FMOENTRYID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
--更新和新增在制数据
|
||
|
||
SELECT 物料内码,生产数量,未入库数量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #tmpMO1 FROM #tmpMO B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,生产数量,未入库数量,FAUXPROPID,仓库内码
|
||
INTO #tmpMO3 FROM #tmpMO1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,SUM(生产数量)生产数量,SUM(未入库数量)未入库数量,FAUXPROPID,仓库内码
|
||
INTO #tmpMO2 FROM #tmpMO3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
--在制量
|
||
UPDATE t1 SET t1.在制数=t2.未入库数量
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmpMO2 t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,在制数)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未入库数量)
|
||
FROM #tmpMO2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
--***************END**********************************
|
||
|
||
|
||
--进检量
|
||
--******************start*******************************
|
||
|
||
----查询截止结束日期之前所有收料单
|
||
|
||
SELECT TS.FSTOCKORGID fstockorgid,TS.FBILLNO 收料单号,TS.FID AS 收料内码,TSE.FENTRYID 收料分录,TSE.FMATERIALID 物料内码,
|
||
ISNULL(TSE.FAUXPROPID,0) fauxpropid,TS.FDATE fdate,TSE.FSTOCKID 仓库内码,FBASEUNITQTY 收料数量,
|
||
CASE WHEN (FBASEUNITQTY-(TSES.FINSTOCKBASEQTY + TSES.FRETURNBASEQTY))>0 THEN (FBASEUNITQTY-(TSES.FINSTOCKBASEQTY + TSES.FRETURNBASEQTY)) ELSE 0 END 未进检量,
|
||
(FBASEUNITQTY-FINSTOCKBASEQTY +FRETURNBASEQTY) 已审进检量
|
||
INTO #TMPRECEIVE
|
||
FROM T_PUR_RECEIVE TS
|
||
INNER JOIN T_PUR_RECEIVEENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_RECEIVEENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_RECEIVEENTRY_S TSES ON (TSE.FID = TSES.FID AND TSE.FENTRYID = TSES.FENTRYID)
|
||
INNER JOIN T_PUR_RECEIVEENTRY_R TSER ON (TSE.FID = TSER.FID AND TSE.FENTRYID = TSER.FENTRYID)
|
||
INNER JOIN T_PUR_RECEIVEFIN TSF ON TSE.FID = TSF.FID
|
||
WHERE 1=1 AND (TS.FDATE <= @FEDate)
|
||
--AND ts.FBILLNO='T61908290024-' AND FRETURNBASEQTY<>0
|
||
AND( FEXECUTEDATE>@FEDate OR ISNULL(FEXECUTEDATE,'')='')--执行日期
|
||
AND (TS.FSTOCKORGID IN (1))
|
||
AND (TSE.FSTOCKID > 0)AND TSE.FSTOCKFLAG = '0'
|
||
|
||
-- AND TS.FDOCUMENTSTATUS IN ('C')
|
||
------查询截止结束日期之前所有入库单
|
||
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未进检量=未进检量+t2.fbaseInqty
|
||
FROM #TMPRECEIVE t1
|
||
INNER JOIN (
|
||
SELECT TSE.FMATERIALID,TSE.FSRCBILLNO,TSEL .FSBILLID,TSEL.FSID,SUM(TSE.FBASEUNITQTY) fbaseinqty
|
||
FROM T_STK_INSTOCK TS INNER JOIN T_STK_INSTOCKENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_STK_INSTOCKENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKENTRY_LK TSEL ON ( TSE.FENTRYID = TSEL.FENTRYID)
|
||
INNER JOIN T_STK_INSTOCKFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
WHERE 1=1 AND TS.FDATE >@FEDate
|
||
AND (TS.FSTOCKORGID IN (1) ) AND TM.FFORBIDSTATUS = 'A' AND TS.FCANCELSTATUS = 'A'
|
||
GROUP BY TSE.FSRCBILLNO,TSEL .FSBILLID,TSEL.FSID,TSE.FMATERIALID
|
||
--ORDER BY TSE.FMOBILLNO,TSE.FMOID,TSE.FMOENTRYID,TSE.FMOENTRYSEQ,TSE.FMATERIALID
|
||
) t2 ON t1.收料内码=t2.FSBILLID AND t1.收料分录=t2.FSID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
--
|
||
--查询截止结束日期之后所有退料单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未进检量=未进检量+t2.fbaseInqty
|
||
FROM #TMPRECEIVE t1
|
||
INNER JOIN (
|
||
SELECT TSE.FMATERIALID,TSE.FSRCBILLNO,TSEL .FSBILLID,TSEL.FSID,SUM(TSE.FBASEUNITQTY) fbaseinqty
|
||
FROM T_PUR_MRB TS INNER JOIN T_PUR_MRBENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_MRBENTRY_F TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_MRBENTRY_LK TSEL ON ( TSE.FENTRYID = TSEL.FENTRYID)
|
||
INNER JOIN T_PUR_MRBFIN TSF ON TSE.FID = TSF.FID INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
INNER JOIN T_BD_MATERIALBASE TMB ON TM.FMATERIALID = TMB.FMATERIALID
|
||
WHERE 1=1 AND TS.FDATE >@FEDate
|
||
AND (TS.FSTOCKORGID IN (1) ) AND TM.FFORBIDSTATUS = 'A' AND TS.FCANCELSTATUS = 'A'
|
||
GROUP BY TSE.FSRCBILLNO,TSEL .FSBILLID,TSEL.FSID,TSE.FMATERIALID
|
||
|
||
) t2 ON t1.收料内码=t2.FSBILLID AND t1.收料分录=t2.FSID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
|
||
--更新和新增进检量数据
|
||
|
||
SELECT 物料内码,收料数量,未进检量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #TMPRECEIVE1 FROM #TMPRECEIVE B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
|
||
SELECT 物料内码,收料数量,未进检量,FAUXPROPID,仓库内码
|
||
INTO #TMPRECEIVE3
|
||
FROM #TMPRECEIVE1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
SELECT 物料内码,SUM(收料数量)收料数量,SUM(未进检量)未进检量,FAUXPROPID,仓库内码
|
||
INTO #TMPRECEIVE2 FROM #TMPRECEIVE3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
|
||
--进检量
|
||
UPDATE t1 SET t1.进检量=t2.未进检量
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #TMPRECEIVE2 t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,进检量)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未进检量)
|
||
FROM #TMPRECEIVE2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE 未进检量<>0 AND
|
||
NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
|
||
--****************END*********************************
|
||
|
||
--*********************未发量*****************************************
|
||
|
||
--未发量(生产)
|
||
--***********************未发量(生产)*****************************
|
||
--查询截止结束日期之前所有生产单用料数
|
||
SELECT (MO.FBILLNO) 生产单号,(MO.FID) 生产内码,(ME.FENTRYID) 生产单分录,
|
||
PE.FMATERIALID 物料内码,(PP.FID) 用料内码,PP.FBILLNO 用料单号,(PE.FENTRYID) 用料单分录,
|
||
ISNULL(PC.FSTOCKID,0) 仓库内码,PE.FAUXPROPID,(PE.FMUSTQTY) AS 应发数量,
|
||
PQ.FSELPICKEDQTY AS 领料选单数量,PQ.FBASENOPICKEDQTY AS 未领数量
|
||
INTO #tmpPPBOM
|
||
FROM T_PRD_MO MO
|
||
INNER JOIN T_PRD_MOENTRY ME ON MO.FID =ME.FID
|
||
INNER JOIN T_PRD_MOENTRY_A MA ON MA.FID =ME.FID AND ME.FENTRYID =MA.FENTRYID
|
||
INNER JOIN T_PRD_PPBOM PP ON PP.FMOID=MO.FID AND ME.FENTRYID =PP.FMOENTRYID
|
||
INNER JOIN T_PRD_PPBOMENTRY PE ON PP.FID =PE.FID
|
||
LEFT JOIN T_PRD_PPBOMENTRY_Q PQ ON PP.FID =PQ.FID AND PE.FENTRYID =PQ.FENTRYID
|
||
LEFT JOIN T_PRD_PPBOMENTRY_C PC ON PP.FID =PC.FID AND PE.FENTRYID =PC.FENTRYID
|
||
WHERE 1=1 AND MO.FCANCELSTATUS='A' AND MO.FDOCUMENTSTATUS='C' AND ME.FPRODUCTTYPE =1
|
||
AND (MO.FDATE <=@FEDate AND ISNULL(MA.FCONVEYDATE,'')<>'')
|
||
AND (MA.FFINISHDATE >@FEDate OR ISNULL(MA.FFINISHDATE,'')='')--2020-04-27之后完工为准完工日期
|
||
--AND (MA.FCLOSEDATE>@FEDate OR ISNULL(MA.FCLOSEDATE,'')='')--2020-04-27之前是结案日期
|
||
|
||
--AND PP.FBILLNO ='PP1910150215'
|
||
|
||
--查询截止结束日期之后所有单生产领料单
|
||
--SELECT 未领数量,t2.fbaseOutqty,*
|
||
UPDATE t1 SET t1.未领数量=未领数量+t2.fbaseOutqty
|
||
FROM #tmpPPBOM t1
|
||
INNER JOIN (
|
||
SELECT tse.FMOID,tse.FMOBILLNO,tse.FMOENTRYID,tse.FPPBOMENTRYID,tse.FPPBOMBILLNO,
|
||
TSE.FMATERIALID,SUM(TSED.FBASESTOCKACTUALQTY) fbaseOutqty
|
||
FROM T_PRD_PICKMTRL TS INNER JOIN T_PRD_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PRD_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
LEFT OUTER JOIN T_PRD_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
|
||
WHERE (TS.FDATE> @FEDate)
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')
|
||
GROUP BY tse.FMOID,tse.FMOBILLNO,tse.FMOENTRYID,tse.FPPBOMENTRYID,tse.FPPBOMBILLNO,TSE.FMATERIALID
|
||
) t2 ON t1.生产单号=t2.FMOBILLNO AND t1.生产单分录=t2.FMOENTRYID
|
||
AND t1.用料单号=t2.FPPBOMBILLNO AND t1.用料单分录=t2.FPPBOMENTRYID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
|
||
--更新和新增未发量数据
|
||
--SELECT * FROM #tmpPPBOM
|
||
|
||
SELECT 物料内码,应发数量,未领数量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #tmpPPBOM1 FROM #tmpPPBOM B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,应发数量,未领数量,FAUXPROPID,仓库内码
|
||
INTO #tmpPPBOM3 FROM #tmpPPBOM1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,SUM(应发数量)应发数量,SUM(未领数量)未领数量,FAUXPROPID,仓库内码
|
||
INTO #tmpPPBOM2 FROM #tmpPPBOM3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
--未发量(生产)
|
||
UPDATE t1 SET t1.未发量=t2.未领数量
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmpPPBOM2
|
||
t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,未发量)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未领数量)
|
||
FROM #tmpPPBOM2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMASTERID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID= TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE 未领数量>0 AND
|
||
NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
--*************************未发量(生产)*****************************************
|
||
|
||
|
||
|
||
--未发量(委外)
|
||
--*************************未发量(委外)***************************
|
||
--查询截止结束日期之前所有委外单用料数
|
||
SELECT (MO.FBILLNO) 委外单号,(MO.FID) 委外内码,(ME.FENTRYID) 委外单分录,
|
||
PE.FMATERIALID 物料内码,(PP.FID) 用料内码,PP.FBILLNO 用料单号,(PE.FENTRYID) 用料单分录,
|
||
ISNULL(PC.FSTOCKID,0) 仓库内码,PE.FAUXPROPID,(PE.FMUSTQTY) AS 应发数量,
|
||
PQ.FSELPICKEDQTY AS 领料选单数量,PQ.FBASENOPICKEDQTY AS 未领数量
|
||
INTO #tmpSubBOM
|
||
FROM T_SUB_REQORDER MO
|
||
INNER JOIN T_SUB_REQORDERENTRY ME ON MO.FID =ME.FID
|
||
--INNER JOIN T_PRD_MOENTRY_A MA ON MA.FID =ME.FID AND ME.FENTRYID =MA.FENTRYID
|
||
INNER JOIN T_SUB_PPBOM PP ON PP.FSUBREQID =MO.FID AND ME.FENTRYID =PP.FSUBREQENTRYID
|
||
INNER JOIN T_SUB_PPBOMENTRY PE ON PP.FID =PE.FID
|
||
LEFT JOIN T_SUB_PPBOMENTRY_Q PQ ON PP.FID =PQ.FID AND PE.FENTRYID =PQ.FENTRYID
|
||
LEFT JOIN T_SUB_PPBOMENTRY_C PC ON PP.FID =PC.FID AND PE.FENTRYID =PC.FENTRYID
|
||
WHERE 1=1 AND MO.FCANCELSTATUS='A' AND MO.FDOCUMENTSTATUS='C' AND ME.FPRODUCTTYPE =1
|
||
AND (MO.FDATE <=@FEDate AND ISNULL(ME.FCONVEYDATE,'')<>'')
|
||
AND (ME.FCLOSEDATE>@FEDate OR ISNULL(ME.FCLOSEDATE,'')='')
|
||
|
||
|
||
|
||
|
||
--查询截止结束日期之后所有单生产领料单
|
||
--SELECT 未领数量,t2.fbaseOutqty,*
|
||
UPDATE t1 SET t1.未领数量=未领数量+t2.fbaseOutqty
|
||
FROM #tmpSubBOM t1
|
||
INNER JOIN (
|
||
SELECT tse.FSUBREQID,tse.FSUBREQBILLNO,tse.FSUBREQENTRYID,tse.FPPBOMENTRYID,tse.FPPBOMBILLNO,
|
||
TSE.FMATERIALID,SUM(TSE.FBASESTOCKACTUALQTY) fbaseOutqty
|
||
FROM T_SUB_PICKMTRL TS INNER JOIN T_SUB_PICKMTRLDATA TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_SUB_PICKMTRLDATA_A TSED ON TSED.FENTRYID = TSE.FENTRYID
|
||
LEFT OUTER JOIN T_SUB_PICKMTRLDATA_L TSL ON (TSE.FENTRYID = TSL.FENTRYID AND FLOCALEID = 2052)
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
|
||
WHERE (TS.FDATE> @FEDate)
|
||
AND (((TS.FSTOCKORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
AND TM.FFORBIDSTATUS = 'A') AND TS.FCANCELSTATUS = 'A')
|
||
GROUP BY tse.FSUBREQID,tse.FSUBREQBILLNO,tse.FSUBREQENTRYID,tse.FPPBOMENTRYID,tse.FPPBOMBILLNO,TSE.FMATERIALID
|
||
) t2 ON t1.委外单号=t2.FSUBREQBILLNO AND t1.委外单分录=t2.FSUBREQENTRYID
|
||
AND t1.用料单号=t2.FPPBOMBILLNO AND t1.用料单分录=t2.FPPBOMENTRYID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
|
||
--更新和新增未发量数据
|
||
--SELECT * FROM #tmpPPBOM
|
||
|
||
SELECT 物料内码,应发数量,未领数量,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #tmpSubBOM1 FROM #tmpSubBOM B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,应发数量,未领数量,FAUXPROPID,仓库内码
|
||
INTO #tmpSubBOM3 FROM #tmpSubBOM1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
|
||
SELECT 物料内码,SUM(应发数量)应发数量,SUM(未领数量)未领数量,FAUXPROPID,仓库内码
|
||
INTO #tmpSubBOM2 FROM #tmpSubBOM3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
|
||
--未发量(委外)
|
||
UPDATE t1 SET t1.未发量=ISNULL(t1.未发量,0)+ISNULL(t2.未领数量,0)
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #tmpSubBOM2
|
||
t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,未发量)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码
|
||
,ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未领数量)
|
||
FROM #tmpSubBOM2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMASTERID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID= TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE 未领数量 > 0
|
||
AND NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
--*********************未发量(委外)*END*******************************
|
||
|
||
-- --截止查询结束日期销售未发数
|
||
-- UPDATE t1 SET t1.未发量=ISNULL(t1.未发量,0)+ISNULL(t1.受订量,0)
|
||
--FROM #Stock_Status_temp t1
|
||
--WHERE ISNULL(t1.受订量,0)<>0
|
||
|
||
--**********************END*******************************
|
||
|
||
--申购未转数
|
||
--*******************strat*****************************
|
||
|
||
--查询截止结束日期之前所有采购申请
|
||
|
||
SELECT TS.FAPPLICATIONORGID fstockorgid,TS.FBILLNO 申请单号,TS.FID AS 申请内码,TSE.FENTRYID 申请分录,TSE.FMATERIALID 物料内码,
|
||
ISNULL(TSE.FAUXPROPID,0) FAUXPROPID,TS.FAPPLICATIONDATE fdate,TMS.FSTOCKID 仓库内码,
|
||
FBASEUNITQTY 申请数量,TSEF.FREMAINQTY AS 未转数
|
||
INTO #TMPREQ
|
||
FROM T_PUR_REQUISITION TS
|
||
INNER JOIN T_PUR_REQENTRY TSE ON TSE.FID = TS.FID
|
||
INNER JOIN T_PUR_REQENTRY_R TSEF ON (TSE.FID = TSEF.FID AND TSE.FENTRYID = TSEF.FENTRYID)
|
||
INNER JOIN T_PUR_REQENTRY_S TSES ON (TSE.FID = TSES.FID AND TSE.FENTRYID = TSES.FENTRYID)
|
||
LEFT JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID=TM.FMATERIALID
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
WHERE 1=1
|
||
--AND ts.FBILLNO ='SQ1910100001'AND FORDERBASEQTY<>FBASEUNITQTY AND TS.FCLOSESTATUS<>'B'
|
||
AND (TS.FAPPLICATIONDATE <=@FEDate)
|
||
AND (TS.FCLOSEDATE>@FEDate or ISNULL(TS.FCLOSEDATE,'')='')
|
||
AND (TS.FAPPLICATIONORGID IN (1) AND TS.FDOCUMENTSTATUS IN ('C'))
|
||
|
||
--查询截止结束日期之后所有采购订单
|
||
--SELECT *
|
||
UPDATE t1 SET t1.未转数=未转数+t2.fbaseOrdqty
|
||
FROM #TMPREQ t1
|
||
INNER JOIN (
|
||
SELECT t1r.FSRCBILLNO,t1k.FSBILLID,t1k.FSID,t1.FMATERIALID,SUM(t1.FBASEUNITQTY) fbaseOrdqty
|
||
FROM T_PUR_POORDER t0
|
||
INNER JOIN T_PUR_POORDERENTRY t1 ON (t0.FID = t1.FID)
|
||
INNER JOIN T_PUR_POORDERENTRY_R t1R ON(t1R.FID = t1.FID AND t1.FENTRYID = t1R.FENTRYID)
|
||
INNER JOIN T_PUR_POORDERENTRY_LK t1k ON(t1.FENTRYID = t1k.FENTRYID)
|
||
INNER JOIN T_BD_MATERIAL TM ON t1.FMATERIALID = TM.FMATERIALID
|
||
WHERE t0.FDATE>@FEDate
|
||
AND ( t0.FCANCELSTATUS = 'A' AND TM.FFORBIDSTATUS = 'A')
|
||
GROUP BY t1r.FSRCBILLNO,t1k.FSBILLID,t1k.FSID,t1.FMATERIALID
|
||
|
||
) t2 ON t1.申请内码=t2.FSBILLID AND t1.申请分录=t2.FSID AND t1.物料内码=t2.FMATERIALID
|
||
|
||
|
||
--更新和新增进检量数据
|
||
|
||
|
||
SELECT 物料内码,申请数量,未转数,FAUXPROPID,CASE WHEN B.仓库内码<>0 THEN B.仓库内码 ELSE ISNULL(tms.FSTOCKID,0) END 仓库内码
|
||
INTO #TMPREQ1 FROM #TMPREQ B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
--WHERE (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
SELECT 物料内码,申请数量,未转数,FAUXPROPID,仓库内码
|
||
INTO #TMPREQ3 FROM #TMPREQ1 B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.仓库内码 )
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
ORDER BY 物料内码
|
||
|
||
|
||
SELECT 物料内码,SUM(申请数量)申请数量,SUM(未转数)未转数,FAUXPROPID,仓库内码
|
||
INTO #TMPREQ2 FROM #TMPREQ3
|
||
GROUP BY 仓库内码,物料内码,FAUXPROPID
|
||
ORDER BY 仓库内码,物料内码,FAUXPROPID
|
||
|
||
--申购未转数
|
||
UPDATE t1 SET t1.申购未转数=t2.未转数
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #TMPREQ2 t2 ON t1.物料内码=t2.物料内码 AND t1.仓库内码=t2.仓库内码 AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,申购未转数)
|
||
|
||
SELECT TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码,
|
||
ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(未转数)
|
||
FROM #TMPREQ2 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMASTERID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID =TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
|
||
--SELECT * FROM #tmpSal2 TSE
|
||
WHERE 未转数<>0 AND
|
||
NOT EXISTS(SELECT * FROM #Stock_Status_temp t2 WHERE TSE.物料内码=t2.物料内码 AND TSE.仓库内码=t2.仓库内码 AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
|
||
--*****************************************************
|
||
|
||
--占用量
|
||
|
||
--********************************************************
|
||
SELECT TSE.FMATERIALID 物料内码,(TSE.FBASEQTY)FBASEQTY,
|
||
CASE WHEN TSE.FSTOCKID<>0 THEN TSE.FSTOCKID ELSE ISNULL(tms.FSTOCKID,0)END FSTOCKID,TSE.FAUXPROPID
|
||
INTO #TMPLINK FROM T_PLN_RESERVELINK TS
|
||
INNER JOIN T_PLN_RESERVELINKENTRY TSE ON TS.FID=TSE.FID
|
||
INNER JOIN T_BD_MATERIAL TM ON TSE.FMATERIALID = TM.FMATERIALID
|
||
LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = TSE.FSTOCKID )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.FSTOCKID AND TSL.FLOCALEID = 2052)
|
||
WHERE TSE.FBASEQTY<>0
|
||
--AND (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL) AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
--GROUP BY TSE.FSTOCKID,TSE.FMATERIALID,FAUXPROPID
|
||
ORDER BY FSTOCKID,TSE.FMATERIALID,FAUXPROPID
|
||
|
||
|
||
SELECT 物料内码,SUM(FBASEQTY)FBASEQTY,FAUXPROPID,B.FSTOCKID 仓库内码
|
||
INTO #TMPLINK1 FROM #TMPLINK B
|
||
LEFT JOIN T_BD_MATERIAL TM ON (B.物料内码 = TM.FMATERIALID )
|
||
--LEFT JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
LEFT JOIN T_BD_STOCK TSK ON ( TSK.FMASTERID = B.FSTOCKID )
|
||
--LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = B.FSTOCKID AND TSL.FLOCALEID = 2052)
|
||
WHERE -- (TM.FNUMBER >=@FSWL AND TM.FNUMBER <=@FEWL)
|
||
(TM.FNUMBER IN(SELECT DISTINCT 物料编码 FROM #YC_T_MRP ))
|
||
AND TSK.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID )
|
||
GROUP BY b.FSTOCKID,物料内码,FAUXPROPID
|
||
ORDER BY b.FSTOCKID,物料内码,FAUXPROPID
|
||
|
||
--占用量
|
||
UPDATE t1 SET t1.占用量=t2.FBASEQTY
|
||
FROM #Stock_Status_temp t1
|
||
INNER JOIN #TMPLINK1 t2 ON t1.物料内码=t2.物料内码
|
||
AND t1.仓库内码=t2.仓库内码
|
||
AND t1.包装内码=T2.FAUXPROPID
|
||
|
||
--不存在数据就重新增占用量
|
||
|
||
INSERT INTO #Stock_Status_temp (物料内码,物料代码,物料名称,规格型号,旧编码,包装方式,仓库内码,仓库名称,仓库代码,包装内码,占用量)
|
||
SELECT
|
||
TM.fmaterialid AS 物料内码,(TM.fnumber) 物料代码,(TML.FNAME) AS 物料名称
|
||
,(TML.FSPECIFICATION) AS 规格型号,ISNULL(TM.FOLDNUMBER,'') AS 旧编码
|
||
,ISNULL(t5.FAUXPTYNUMBER,'') 包装方式,TBS.FSTOCKID 仓库内码,TSL.fname 仓库名称
|
||
,TBS.fnumber 仓库代码,TSE.FAUXPROPID AS 包装内码,(FBASEQTY)
|
||
FROM #TMPLINK1 TSE
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMASTERID = TSE.物料内码 )
|
||
INNER JOIN T_BD_MATERIAL_L TML ON TM.FMATERIALID=TML.FMATERIALID AND TML.FLOCALEID =2052
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK TBS ON (TBS.FMASTERID = TSE.仓库内码 )
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TSE.仓库内码 AND TSL.FLOCALEID = 2052)
|
||
LEFT OUTER JOIN T_BD_FLEXSITEMDETAILV t3 ON TSE.FAUXPROPID=t3.FID
|
||
LEFT OUTER JOIN T_BAS_ASSISTANTDATAENTRY_L t4 ON t3.FF100002=t4.FENTRYID
|
||
LEFT OUTER JOIN T_BD_AUXPTYVALUEENTITY t5 ON t3.FF100002=t5.FAUXPTYID AND t3.FID =t5.FAUXPTYVALUEID
|
||
WHERE FBASEQTY <> 0
|
||
AND NOT EXISTS(
|
||
SELECT 1
|
||
FROM #Stock_Status_temp t2
|
||
WHERE TSE.物料内码=t2.物料内码
|
||
AND TSE.仓库内码=t2.仓库内码
|
||
AND t2.包装内码=TSE.FAUXPROPID)
|
||
|
||
|
||
--*********************占用量END***********************************
|
||
|
||
|
||
--可用库存
|
||
--*******************************************************
|
||
|
||
UPDATE t1 SET t1.可用库存=ISNULL(期末结存,0)+ISNULL(t1.在制数,0)+ISNULL(在途量,0)-ISNULL(未发量,0)-ISNULL(受订量,0)
|
||
FROM #Stock_Status_temp t1
|
||
|
||
--*********************可用库存END**********************************
|
||
|
||
--新增BOM新增物料
|
||
SELECT 序号=IDENTITY(INT,1,1),物料内码,物料代码,物料名称,规格型号,旧编码,上期结存
|
||
,本期采购入库,本期耗用,期末结存,在途量,在制数,进检量,未发量,领料数量,销售出库数量
|
||
,仓库拨出数量,仓库拨入数量,申购未转数,受订量,占用量,可用库存
|
||
,仓库内码,仓库代码,仓库名称,包装方式,FProMaterialId,产品代码
|
||
INTO #Stock_Bom
|
||
FROM (
|
||
SELECT t1.FMATERIALID 物料内码,物料代码,t2.物料名称,规格型号,旧编码,上期结存,本期采购入库,本期耗用,期末结存
|
||
,在途量,在制数,进检量,未发量,领料数量,销售出库数量,仓库拨出数量,仓库拨入数量,申购未转数
|
||
,受订量,占用量,可用库存,t2.仓库内码,仓库代码,仓库名称,包装方式,t1.FProMaterialId,t1.FOrderNum 产品代码,FOrderNum
|
||
,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6
|
||
FROM #YC_T_MRP t1
|
||
INNER JOIN #Stock_Status_temp t2 ON t1.物料编码=t2.物料代码
|
||
UNION ALL
|
||
SELECT t1.FMATERIALID 物料内码,t1.物料编码 物料代码,t2.FNAME 物料名称,t2.FSPECIFICATION 规格型号
|
||
,ISNULL(TM.FOLDNUMBER,'') 旧编码,0 上期结存,0 本期采购入库,0 本期耗用,0 期末结存
|
||
,0 在途量,0 在制数,0 进检量, 0 未发量,0 领料数量,0 销售出库数量,0 仓库拨出数量
|
||
,0 仓库拨入数量,0 申购未转数,0 受订量,0 占用量,0 可用库存,ts.FSTOCKID,ts.FNUMBER AS 仓库代码
|
||
,tsl.FNAME AS 仓库名称,''包装方式,t1.FProMaterialId,t1.FOrderNum 产品代码,FOrderNum
|
||
,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6
|
||
FROM #YC_T_MRP t1
|
||
INNER JOIN T_BD_MATERIAL TM ON (TM.FMATERIALID = t1.FMATERIALID )
|
||
INNER JOIN T_BD_MATERIAL_L t2 ON (t2.FMATERIALID = t1.FMATERIALID )
|
||
INNER JOIN T_BD_MATERIALSTOCK TMS ON TM.FMATERIALID = TMS.FMATERIALID
|
||
INNER JOIN T_BD_STOCK ts ON tms.FSTOCKID=ts.FSTOCKID
|
||
LEFT OUTER JOIN T_BD_STOCK_L TSL ON (TSL.FSTOCKID = TS.FSTOCKID AND TSL.FLOCALEID = 2052)
|
||
WHERE 1=1
|
||
AND 物料编码 NOT IN (SELECT DISTINCT 物料代码 FROM #Stock_Status_temp t2)
|
||
AND TMS.FSTOCKID IN ( SELECT DISTINCT FStockID FROM #tmpStockID))t
|
||
ORDER BY FOrderNum,FSEQ1,FSEQ2,FSEQ3,FSEQ4,FSEQ5,FSEQ6
|
||
|
||
SELECT
|
||
t0.FMATERIALID AS 'ProMateralId'
|
||
,t1e.FMATERIALID
|
||
,t1e_c.FSTOCKID
|
||
--,t1.FBILLNO
|
||
,SUM(t1e.FBASENEEDQTY) AS 'FBASENEEDQTY'--基本单位已领数量
|
||
,SUM(t1e_q.FBASEPICKEDQTY) AS 'FBASEPICKEDQTY'--基本单位已领数量
|
||
,SUM(t1e_q.FBASENOPICKEDQTY) AS 'FBASENOPICKEDQTY'--基本单位未领数量
|
||
,ISNULL(stuff((SELECT DISTINCT ','+ CONVERT(nvarchar(100),tt.FID) FROM #TEMPMO tt WHERE tt.FMATERIALID = t0.FMATERIALID for xml path('')),1,1,''),'') AS 'MOIDS'
|
||
,ISNULL(stuff((SELECT DISTINCT ','+ CONVERT(nvarchar(100),tt.FENTRYID) FROM #TEMPMO tt WHERE tt.FMATERIALID = t0.FMATERIALID for xml path('')),1,1,''),'') AS 'MOENTRYIDS'
|
||
,ISNULL(stuff((SELECT DISTINCT ','+ CONVERT(nvarchar(100),tt.FBILLNO) FROM #TEMPMO tt WHERE tt.FMATERIALID = t0.FMATERIALID for xml path('')),1,1,''),'') AS 'MONOS'
|
||
,ISNULL(stuff((SELECT DISTINCT ','+ CONVERT(nvarchar(100),tt.FSALEORDERNO) FROM #TEMPMO tt WHERE tt.FMATERIALID = t0.FMATERIALID AND tt.FSALEORDERNO !='' for xml path('')),1,1,''),'') AS 'SALENOS'
|
||
INTO #TEMPMOQTY
|
||
FROM #TEMPMO t0
|
||
INNER JOIN T_PRD_PPBOMENTRY t1e ON t1e.FMOENTRYID = t0.FENTRYID --生产用料清单表体
|
||
INNER JOIN T_PRD_PPBOMENTRY_Q t1e_q ON t1e_q.FENTRYID = t1e.FENTRYID
|
||
INNER JOIN T_PRD_PPBOMENTRY_C t1e_c ON t1e_c.FENTRYID = t1e.FENTRYID
|
||
GROUP BY
|
||
t0.FMATERIALID,t1e.FMATERIALID,t1e_c.FSTOCKID
|
||
SELECT t0.ProMateralId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
|
||
INTO #TEMPMONO2Pro
|
||
FROM #TEMPMOQTY t0
|
||
GROUP BY t0.ProMateralId,t0.MONOS,t0.SALENOS,t0.MOIDS,t0.MOENTRYIDS
|
||
|
||
SELECT 序号 AS 'FIDENTITYID'
|
||
,物料代码,物料名称,规格型号,旧编码
|
||
,上期结存,本期采购入库,本期耗用,期末结存
|
||
,销售出库数量,仓库拨出数量,仓库拨入数量,申购未转数
|
||
,在途量,在制数,进检量,未发量,领料数量,受订量,占用量,可用库存
|
||
,仓库代码,仓库名称,包装方式,产品代码
|
||
,t1.FBASENEEDQTY
|
||
,t1.FBASENOPICKEDQTY
|
||
,t1.FBASEPICKEDQTY
|
||
,CASE CHARINDEX(',',t2.MONOS) WHEN 0 THEN t2.MONOS ELSE '' END AS 'MONO'
|
||
,CASE CHARINDEX(',',t2.SALENOS) WHEN 0 THEN t2.SALENOS ELSE '' END AS 'SALENO'
|
||
,t2.SALENOS,t2.MOENTRYIDS,t2.MOIDS
|
||
--INTO {0}
|
||
FROM #Stock_Bom t0
|
||
LEFT JOIN #TEMPMONO2Pro t2 on t2.ProMateralId = t0.FProMaterialId
|
||
LEFT JOIN #TEMPMOQTY t1 ON t0.物料内码 = t1.FMATERIALID AND t0.仓库内码 = t1.FSTOCKID AND t0.FProMaterialId = t1.ProMateralId
|
||
|
||
DROP TABLE #TEMPMO
|
||
DROP TABLE #TEMPMOQTY
|
||
DROP TABLE #TEMPMONO2Pro
|
||
DROP TABLE #Stock_Bom
|
||
DROP TABLE #TMP
|
||
DROP TABLE #TMP1
|
||
DROP TABLE #TMPLINK
|
||
DROP TABLE #TMPLINK1
|
||
DROP TABLE #TMP4
|
||
DROP TABLE #TMP5
|
||
DROP TABLE #TMP6
|
||
DROP TABLE #TMP7
|
||
DROP TABLE #TMP8
|
||
DROP TABLE #tmpSal
|
||
DROP TABLE #tmpSal1
|
||
DROP TABLE #tmpSal2
|
||
DROP TABLE #tmpSal3
|
||
DROP TABLE #tmpMO
|
||
DROP TABLE #tmpMO1
|
||
DROP TABLE #tmpMO2
|
||
DROP TABLE #tmpMO3
|
||
|
||
DROP TABLE #TMPREQ
|
||
DROP TABLE #TMPREQ1
|
||
DROP TABLE #TMPREQ2
|
||
DROP TABLE #TMPREQ3
|
||
DROP TABLE #TMPRECEIVE
|
||
DROP TABLE #TMPRECEIVE1
|
||
DROP TABLE #TMPRECEIVE2
|
||
DROP TABLE #TMPRECEIVE3
|
||
DROP TABLE #tmppoorder
|
||
DROP TABLE #tmppoorder1
|
||
DROP TABLE #tmppoorder2
|
||
DROP TABLE #tmppoorder3
|
||
DROP TABLE #tmpPPBOM
|
||
DROP TABLE #tmpPPBOM1
|
||
DROP TABLE #tmpPPBOM2
|
||
DROP TABLE #tmpPPBOM3
|
||
DROP TABLE #tmpSUBBOM
|
||
DROP TABLE #tmpSUBBOM1
|
||
DROP TABLE #tmpSUBBOM2
|
||
DROP TABLE #tmpSUBBOM3
|
||
DROP TABLE #Stock_Status_temp
|
||
SET nocount off |