Files
GateDge2023_ljy/07.珠海英搏尔/Enpower.Python/产品成本还原报表V1.0.sql
PastSaid fa480006a8 1
2024-07-16 10:33:50 +08:00

37 lines
1.5 KiB
SQL

--WO2405090020
;WITH #TABLE0 AS (
SELECT t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID
,SUM(t1e.FAMOUNT) FAMOUNT,t1e.FMOENTRYID
FROM T_PRD_PICKMTRLDATA t1e
GROUP BY t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,t1e.FMOENTRYID
),#TABLE1 AS (
SELECT t0.FBILLNO,t0.FBILLTYPE,t0e.FSEQ,t0e.FMATERIALID AS TopMaterialId
,t1e.FLOT,t1e.FLOT_TEXT,t1e.FAMOUNT,t1e.FMATERIALID
,ROW_NUMBER() OVER (PARTITION BY t0e.FID,t0e.FENTRYID ORDER BY t1e.FLOT,t1e.FMATERIALID) RN
,CONVERT(varchar(1000),t1e.FMATERIALID) AS 'aPATH'
,1 lv
FROM T_PRD_MO t0
INNER JOIN T_PRD_MOENTRY t0e on t0.FID = t0e.FID
CROSS APPLY (
SELECT t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID
,SUM(t1e.FAMOUNT) FAMOUNT,t1e.FMOENTRYID
FROM T_PRD_PICKMTRLDATA t1e
WHERE t1e.FMOENTRYID = t0e.FENTRYID
GROUP BY t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,t1e.FMOENTRYID
) t1e --on t1e.FMOENTRYID = t0e.FENTRYID
WHERE t0.FBILLNO = 'RO2405090020'
UNION ALL
SELECT t0.FBILLNO,t0.FBILLTYPE,t0e.FSEQ,tt.TopMaterialId--,t0e.FMATERIALID
,t1e.FLOT,t1e.FLOT_TEXT,t1e.FAMOUNT
,t1e.FMATERIALID
,ROW_NUMBER() OVER (PARTITION BY t0e.FID,t0e.FENTRYID ORDER BY t1e.FLOT,t1e.FMATERIALID) RN
,CONVERT(varchar(1000),CONCAT(tt.aPATH,'.',t1e.FMATERIALID)) AS 'aPATH'
,tt.lv + 1 lv
FROM #TABLE1 tt
INNER JOIN T_PRD_MO t0 on tt.FLOT_TEXT = t0.FBILLNO
INNER JOIN T_PRD_MOENTRY t0e on t0.FID = t0e.FID
INNER JOIN #TABLE0 t1e on t0e.FENTRYID = t1e.FMOENTRYID
)
SELECT * FROM #TABLE1 ORDER BY aPATH
--SELECT * FROM T_PRD_PICKMTRLDATA