Files
GateDge2023_ljy/CY.PRD_MORPT/实际工时归集关联查询.sql
PastSaid 5e2781182d a
2024-03-04 16:50:20 +08:00

51 lines
1.6 KiB
SQL

SELECT
t0.FBILLNO
,t0e.FSRCBILLNO
,t0e.FENTRYID
,t1e.F_CYG_WORKTYPE
,t1e.FFINISHQTY
,t1e.FSTDMANHOUR
,t1e.FHRWORKTIME
,t2p.FPERUNITSTANDHOUR
,CASE t1e.F_CYG_WORKTYPE WHEN '' THEN t1e.FHRWORKTIME ELSE (CASE t1e.FSTDMANHOUR WHEN 0 THEN t1e.FHRWORKTIME ELSE t1e.FSTDMANHOUR * t1e.FFINISHQTY END) END 'NEW_FHRWORKTIME'
,t2.F_CYG_FITTIME
,CASE t1e.F_CYG_WORKTYPE WHEN '1' THEN t2.F_CYG_FITTIME * t1e.FFINISHQTY ELSE 0 END 'NEW_FITTIME'
,t2.F_CYG_GUIDETIME
,CASE t1e.F_CYG_WORKTYPE WHEN '2' THEN t2.F_CYG_GUIDETIME * t1e.FFINISHQTY ELSE 0 END 'NEW_GUIDETIME'
INTO #temp
FROM T_CB_WORKHOURS t0
INNER JOIN T_CB_WORKHOURSENTRY t0e on t0.FID = t0e.FID
INNER JOIN T_PRD_MORPTENTRY t1e on t1e.FENTRYID = t0e.FSRCENTRYID
AND t1e.FID = t0e.FSRCBILLID AND t1e.FSEQ = t0e.FSRCSEQ AND t0e.FSRCBILLFORMID = 'PRD_MORPT'
INNER JOIN T_BD_MATERIAL t2 on t2.FMATERIALID = t1e.FMATERIALID
INNER JOIN T_BD_MATERIALPRODUCE t2p on t2p.FMATERIALID = t1e.FMATERIALID
--SELECT
-- t0.FBILLNO
-- ,t0.FSRCBILLNO
-- ,t0.FENTRYID
-- ,t0.F_CYG_WORKTYPE
-- ,t0.FFINISHQTY
-- ,t0.FSTDMANHOUR
-- ,t0.FHRWORKTIME
-- ,t0.FPERUNITSTANDHOUR
-- ,t0.NEW_FHRWORKTIME
-- ,t0.F_CYG_FITTIME
-- ,t0.NEW_FITTIME
-- ,t0.F_CYG_GUIDETIME
-- ,t0.NEW_GUIDETIME
-- INTO #temp1
--FROM #temp t0
--WHERE t0.FSTDMANHOUR = 0
UPDATE t0e
SET t0e.F_CYG_WORKTYPE = t1.F_CYG_WORKTYPE
,t0e.FFitTimeTotal =t1.NEW_FITTIME
,t0e.FguideTimeTotal = t1.NEW_GUIDETIME
,t0e.FHrWorkTimePart = t1.NEW_FHRWORKTIME
FROM T_CB_WORKHOURSENTRY t0e
INNER JOIN #temp t1 on t0e.FENTRYID = t1.FENTRYID
SELECT * FROM #temp
DROP TABLE #temp
--SELECT * FROM #temp1
--DROP TABLE #temp1