This commit is contained in:
PastSaid
2024-07-16 10:33:50 +08:00
parent e8a1f46c3d
commit fa480006a8
132 changed files with 20893 additions and 4519 deletions

View File

@@ -0,0 +1,457 @@
IF EXISTS (SELECT 1 WHERE object_id('tempdb..#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>') IS NOT NULL)
DROP TABLE [dbo].#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
GO
IF EXISTS (SELECT 1 WHERE object_id('tempdb..#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>') IS NOT NULL)
DROP TABLE [dbo].[#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>]
GO
CREATE TABLE #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(
[FBILLNO] [nvarchar](80) NULL,
[FID] [int] NOT NULL,
[FENTRYID] [int] NOT NULL,
[TopMaterialId] [int] NULL,
[FMATERIALID] [int] NULL,
[FFORMID] [varchar](36) NULL,
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] [decimal](23, 10) NOT NULL,
[FSTATUS] [char](1) NULL,
[FCOSTDATE] [datetime] NULL,
[FQTY] [decimal](23, 10) NOT NULL,
[FPERIOD] [int] NULL
) ON [PRIMARY]
declare @sqlL varchar(max)
declare @billNo varchar(100),@materialNumber varchar(100)
declare @dbName varchar(100)
SET @sqlL = N'
INSERT INTO #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SELECT t0.FBILLNO,t0.FID,t0e.FENTRYID,t0e.FMATERIALID AS TopMaterialId,t0e.FMATERIALID
,t0.FFORMID AS FFORMID,t0e_a.FSTOCKINQUASELAUXQTY AS <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0e_a.FSTATUS,t0e_a.FCOSTDATE,t0e_a.FSTOCKINQUASELAUXQTY AS FQTY
,CONVERT(INT, CONVERT(VARCHAR(6),ISNULL(t0e_a.FCOSTDATE,GETDATE()),112)) AS FPERIOD
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.FENTRYID = t0e_a.FENTRYID
INNER JOIN T_BD_MATERIAL t1 on t1.FMATERIALID = t0e.FMATERIALID
WHERE 1 = 1
'
select @dbName = db_name()
if @dbName != 'AIS20231110222743'
BEGIN
SET @billNo = 'WO2403210039'
--SET @billNo = 'WO2310240111'
--SET @billNo = 'TO2310120003'
--SET @billNo = 'RO2403280019'
--SET @billNo = 'WO2310240112'
END
IF @billNo != '' OR @materialNumber = ''
BEGIN
SET @sqlL = @sqlL + N' AND t0.FBILLNO = ''' + @billNo + ''''
END
IF @materialNumber != ''
BEGIN
SET @sqlL = @sqlL + N' AND t1.FNUMBER = ''' + @materialNumber + ''''
END
EXEC(@sqlL)
;WITH #TopMo AS (
SELECT * FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
)
,#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> AS (
SELECT t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,'PRD_MO' AS 'FFORMID'
,SUM(t1e.FAMOUNT) AS 'FAMOUNT',t1e.FMOENTRYID,t1e.FMOBILLNO
,SUM(t1e.FBASEACTUALQTY) AS 'FBASEACTUALQTY'
,YEAR(MAX(t1.FDATE)) * 100 + MONTH(MAX(t1.FDATE)) AS 'FPERIOD'
FROM T_PRD_PICKMTRL t1
INNER JOIN T_PRD_PICKMTRLDATA t1e on t1.FID = t1e.FID
WHERE t1.FDOCUMENTSTATUS = 'C' AND t1e.FMOBILLNO != t1e.FLOT_TEXT
GROUP BY t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,t1e.FMOENTRYID,t1e.FMOBILLNO
)
,<><CEAF><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> AS (
SELECT t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,'SUB_SUBREQORDER' AS 'FFORMID'
,SUM(ISNULL(t1e_a.FAMOUNT,0)) FAMOUNT,t1e.FSUBREQENTRYID AS FMOENTRYID
,SUM(t1e.FBASEACTUALQTY) AS 'FBASEACTUALQTY'
,YEAR(MAX(t1.FDATE)) * 100 + MONTH(MAX(t1.FDATE)) AS 'FPERIOD'
FROM T_SUB_PICKMTRL t1
INNER JOIN T_SUB_PICKMTRLDATA t1e on t1.FID = t1e.FID
INNER JOIN T_SUB_PICKMTRLDATA_A t1e_a on t1e.FENTRYID = t1e_a.FENTRYID
WHERE t1.FDOCUMENTSTATUS = 'C'
GROUP BY t1e.FLOT,t1e.FLOT_TEXT,t1e.FMATERIALID,t1e.FSUBREQENTRYID
)
, #<23><><EFBFBD>ϵ<EFBFBD> AS (
SELECT t0.FID,t0.FBILLNO,t0e.FENTRYID,t0e.FMATERIALID AS MoMaterialId,t0e.FBOMID
,CONVERT(decimal(23,10),0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t1.FLOT,t1.FLOT_TEXT,t1.FMATERIALID,t1.FAMOUNT,t1.FMOENTRYID
,CONVERT(VARCHAR(36),t1.FFORMID) AS 'FFORMID'
,t0e_a.FSTOCKINQUASELAUXQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t1.FBASEACTUALQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t1.FPERIOD
,CASE WHEN t1.FBASEACTUALQTY > ISNULL(t0e.FBASEUNITQTY,0) THEN 1 ELSE CONVERT(decimal(23,10),t1.FBASEACTUALQTY / ISNULL(t0e.FBASEUNITQTY,t1.FBASEACTUALQTY)) END AS 'QtyRatio'
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> t1
LEFT JOIN T_PRD_MO t0 on t0.FBILLNO = t1.FLOT_TEXT
LEFT JOIN T_PRD_MOENTRY t0e on t0.FID = t0e.FID
LEFT JOIN T_PRD_MOENTRY_A t0e_a on t0e.FENTRYID = t0e_a.FENTRYID
UNION ALL
SELECT t0.FID,t0.FBILLNO,t0e.FENTRYID,t0e.FMATERIALID AS MoMaterialId,t0e.FBOMID
,t0e.FSTOCKINQTY
,t1.FLOT,t1.FLOT_TEXT,t1.FMATERIALID,t1.FAMOUNT,t1.FMOENTRYID
,CONVERT(VARCHAR(36),t1.FFORMID) AS 'FFORMID'
,t0e.FQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t1.FBASEACTUALQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t1.FPERIOD
,CASE WHEN t1.FBASEACTUALQTY > ISNULL(t0e.FQTY,0) THEN 1 ELSE CONVERT(decimal(23,10),t1.FBASEACTUALQTY / ISNULL(t0e.FQTY,t1.FBASEACTUALQTY)) END AS 'QtyRatio'
FROM <><CEAF><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> t1
LEFT JOIN T_SUB_REQORDER t0 on t0.FBILLNO = t1.FLOT_TEXT
LEFT JOIN T_SUB_REQORDERENTRY t0e on t0.FID = t0e.FID
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS (
SELECT t0.FBILLNO AS 'MoBillNo'
,t0.FBILLNO AS 'PMoBillNo'
,CONVERT(varchar(1000),ROW_NUMBER() OVER (ORDER BY t0.FID,t0.FENTRYID,t0.FMATERIALID)) AS 'aPATH'
,CONVERT(varchar(1000),'0') AS 'PPATH'
,CONVERT(VARCHAR(8000),'') AS 'MPath'
,0 AS 'lv'
,t0.FID AS 'MoId'
,t0.FENTRYID AS 'MoEntryId'
,t0.FMATERIALID AS 'MoMaterialId'
,0 AS 'PMoId'
,0 AS 'PMoEntryId'
,0 AS 'PMoMaterialId'
,t0.TopMaterialId
,t0.FMATERIALID
,0 FLOT
,CONVERT(nvarchar(255),'') AS 'FLOT_TEXT'
,CONVERT(decimal(23,10),0) AS 'FAMOUNT'
,CONVERT(decimal(23,10),1) AS 'QtyRatio'
,CONVERT(decimal(23,10),0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>'
,CONVERT(decimal(23,10),0) AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
,t0.FQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.FQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.FPERIOD
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.FFORMID
--,0 AS 'isTrue'
FROM #TopMo t0
UNION ALL
SELECT ISNULL(t0.FBILLNO,'') AS 'MoBillNo'
,tt.MoBillNo
,CONVERT(varchar(1000),CONCAT(tt.aPATH,'.',ROW_NUMBER() OVER (PARTITION BY tt.MoId,tt.MoEntryId ORDER BY t0.FMATERIALID))) AS 'aPATH'
,tt.aPATH
,CONVERT(varchar(8000),CONCAT(tt.MPath,ISNULL(tt.MoBillNo,''),'>'))
,tt.lv + 1 lv
,ISNULL(t0.FID,0) AS 'MoId'
,ISNULL(t0.FENTRYID,0) AS 'MoEntryId'
,ISNULL(t0.MoMaterialId, 0)
,tt.MoId AS 'PMoId'
,tt.MoEntryId AS 'PMoEntryId'
,tt.MoMaterialId AS 'PMoMaterialId'
,tt.TopMaterialId
,t0.FMATERIALID
,t0.FLOT
,t0.FLOT_TEXT
,CONVERT(decimal(23,10),t0.FAMOUNT * tt.QtyRatio)
,CONVERT(decimal(23,10),tt.QtyRatio * t0.QtyRatio)
,CONVERT(decimal(23,10),tt.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>)
,CONVERT(decimal(23,10),t0.FAMOUNT)
,CONVERT(decimal(23,10),t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
,ISNULL(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
,t0.FPERIOD
,ISNULL(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(t0.FFORMID,'')
--,CASE WHEN t0.FBILLNO = tt.MoBillNo THEN 1 ELSE 0 END AS 'isTrue'
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> tt
CROSS APPLY (
SELECT *
FROM #<23><><EFBFBD>ϵ<EFBFBD> t0
WHERE t0.FFORMID = tt.FFORMID
AND t0.FMOENTRYID = tt.MoEntryId
--AND CHARINDEX(t0.FBILLNO,tt.MPath) = 0
) t0
WHERE 1=1
--AND tt.isTrue = 0
AND CHARINDEX(tt.MoBillNo,tt.MPath) = 0
--AND tt.lv < 5
)
,#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ AS (
SELECT
t0.FBILLID
,t0.FBILLENTRYID
,t0.FBILLSEQ
--,t2_l.FNAME AS '<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>Ŀ'
,t1e.FCOSTITEMID
--,t3_l.FNAME AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ'
,t1e.FEXPENSESITEMID
--,t1e.FQUALIFIEDINAMOUNT / t1.FQUALIFIEDINQTY * tt.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * tt.QtyRatio AS 'FAMOUNT'
,t1e.FQUALIFIEDINAMOUNT
,t1.FSUMQUALIFIEDINQTY
,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,QtyRatio
FROM (SELECT MoEntryId,QtyRatio,FPERIOD,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> WHERE MoId > 0) tt
INNER JOIN T_CB_PROORDERDIME t0 on t0.FBILLENTRYID = tt.MoEntryId
INNER JOIN V_CB_PROORDERINFO t0e ON t0e.FPRODUCTDIMEID = t0.FPRODUCTDIMEID
INNER JOIN V_CB_COSTCALEXPENSE t1 ON t1.FID = t0e.FID AND t1.FQUALIFIEDINQTY != 0
INNER JOIN V_CB_COSTCALEXPENSEDETAIL t1e ON t1.FENTRYID = t1e.FENTRYID
CROSS APPLY(
SELECT TOP 1 1 AS 'val'
FROM V_HS_OUTACCTG t5
WHERE t5.FID = t0e.FACCTGID
AND (tt.FPERIOD IS NULL OR t5.FYEAR *100 + t5.FPERIOD <= tt.FPERIOD)
ORDER BY t5.FYEAR *100 + t5.FPERIOD DESC
) t2
WHERE 1 = 1
AND t1.FQUALIFIEDINQTY > 0
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ AS (
SELECT *
FROM (
SELECT FBILLENTRYID AS 'EXP_BILLENTRYID',t1.fieldName AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ'
,SUM(FQUALIFIEDINAMOUNT) / MAX(FSUMQUALIFIEDINQTY) * MAX(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) * MAX(t0.QtyRatio) AS 'FAMOUNT'
,MAX(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) / MAX(FSUMQUALIFIEDINQTY) AS 'NewQtyRation'
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ t0
LEFT JOIN V_BD_COST_RESTORE_EXPENSE t1 on t0.FEXPENSESITEMID = t1.FEXPID
WHERE NOT (t0.FCOSTITEMID = 20522 AND t0.FEXPENSESITEMID = 20045)
GROUP BY t0.FBILLENTRYID,t1.fieldName
) t0
PIVOT
(
SUM(t0.FAMOUNT) FOR
t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ IN (O1,O2,O3,O4,O5,O6,O7,O8,O9,O10,O11,O12,O13,O14,O15,O16)
) AS t1
)
, #<23>ɱ<EFBFBD><C9B1><EFBFBD>Ŀ AS (
SELECT *
FROM (
SELECT FBILLENTRYID AS 'COST_BILLENTRYID',t2_l.<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>Ŀ
,SUM(FQUALIFIEDINAMOUNT) / MAX(FSUMQUALIFIEDINQTY) * MAX(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) * MAX(t0.QtyRatio) AS 'FAMOUNT'
,MAX(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) / MAX(FSUMQUALIFIEDINQTY) AS 'NewQtyRation'
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ t0
LEFT JOIN (
SELECT FCOSTITEMID,CONCAT('P',ROW_NUMBER() OVER (ORDER BY t2_l.FCOSTITEMID)) <EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>Ŀ
FROM T_HS_COSTITEM_L t2_l
WHERE t2_l.FLOCALEID = 2052
) t2_l on t0.FCOSTITEMID = t2_l.FCOSTITEMID
GROUP BY t0.FBILLENTRYID,t2_l.<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>Ŀ
) t0
PIVOT
(
SUM(t0.FAMOUNT) FOR
t0.<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD>Ŀ IN (P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12)
) AS t1
)
, <>ʹ<EFBFBD>ʱ<EFBFBD>鼯 AS (
SELECT t0e.FPROORDERNO,t0e.FPROORDERENTRYID,FCOSTCENTERID
,SUM(t0e.FHRWORKTIME) AS '<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ',SUM(t0e.FRPTQTY) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,SUM(t2e.FHRWORKTIME) FHRWORKTIME,SUM(t2e.FFINISHQTY) FFINISHQTY
FROM T_CB_WORKHOURSENTRY t0e
INNER JOIN T_PRD_MORPTENTRY t2e on t2e.FENTRYID = t0e.FSRCENTRYID
WHERE t0e.FSRCBILLFORMID = 'PRD_MORPT'
GROUP BY t0e.FPROORDERNO,t0e.FPROORDERENTRYID,FCOSTCENTERID
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> AS (
SELECT t0e.FMOENTRYID,t0e.FMATERIALID,t0e.FLOT,SUM(t0e.FAMOUNT) AS 'FAMOUNT','PRD_MO' AS 'FFORMID'
,SUM(t0e_q.FACTUALQTY) AS 'FQTY'
FROM T_PRD_FEEDMTRL t0
INNER JOIN T_PRD_FEEDMTRLDATA t0e on t0.FID = t0e.FID
INNER JOIN T_PRD_FEEDMTRLDATA_Q t0e_q on t0e_q.FENTRYID = t0e.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C'
GROUP BY t0e.FMOID,t0e.FMOENTRYID,t0e.FMATERIALID,t0e.FLOT
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> AS (
SELECT t0e.FMOENTRYID,t0e.FMATERIALID,t0e.FLOT,SUM(t0e.FAMOUNT) AS 'FAMOUNT','PRD_MO' AS 'FFORMID'
,SUM(t0e.FQTY) AS 'FQTY'
FROM T_PRD_RETURNMTRL t0
INNER JOIN T_PRD_RETURNMTRLENTRY t0e on t0.FID = t0e.FID
WHERE t0.FDOCUMENTSTATUS = 'C'
GROUP BY t0e.FMOID,t0e.FMOENTRYID,t0e.FMATERIALID,t0e.FLOT
)
, <><EFBFBD>ϵ<EFBFBD> AS (
SELECT t0e.FSUBREQENTRYID AS FMOENTRYID,t0e.FMATERIALID,t0e.FLOT,SUM(t0e.FAMOUNT) AS 'FAMOUNT','SUB_SUBREQORDER' AS 'FFORMID'
,SUM(t0e_q.FACTUALQTY) AS 'FQTY'
FROM T_SUB_FEEDMTRL t0
INNER JOIN T_SUB_FEEDMTRLENTRY t0e on t0.FID = t0e.FID
INNER JOIN T_SUB_FEEDMTRLENTRY_Q t0e_q on t0e_q.FENTRYID = t0e.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C'
GROUP BY t0e.FLOT,t0e.FMATERIALID,t0e.FSUBREQENTRYID
)
, <><CEAF><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> AS (
SELECT t0e_a.FSUBREQENTRYID AS FMOENTRYID,t0e.FMATERIALID,t0e.FLOT,SUM(t0e.FAMOUNT) AS 'FAMOUNT','SUB_SUBREQORDER' AS 'FFORMID'
,SUM(t0e.FQTY) AS 'FQTY'
FROM T_SUB_RETURNMTRL t0
INNER JOIN T_SUB_RETURNMTRLENTRY t0e on t0.FID = t0e.FID
INNER JOIN T_SUB_RETURNMTRLENTRY_A t0e_a on t0e.FENTRYID = t0e_a.FENTRYID
WHERE t0.FDOCUMENTSTATUS = 'C'
GROUP BY t0e.FLOT,t0e.FMATERIALID,t0e_a.FSUBREQENTRYID
)
, #<23><>ʱ<EFBFBD><CAB1><EFBFBD>ɱ<EFBFBD> AS (
SELECT MoBillNo,PMoBillNo
,MoId,MoEntryId,PMoId,PMoEntryId,PMoMaterialId,TopMaterialId,MoMaterialId,t0.FMATERIALID
,t0.FLOT,t0.FLOT_TEXT AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',aPATH,PPATH,lv,t0.FFORMID
,CASE t0.MoId WHEN 0 THEN (t0.FAMOUNT + (ISNULL(t2.FAMOUNT,0) -ISNULL(t3.FAMOUNT,0) + ISNULL(t4.FAMOUNT,0) - ISNULL(t5.FAMOUNT,0)) * ISNULL(t0.QtyRatio,1)) ELSE 0 END AS 'ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>'
,(t0.FAMOUNT + (ISNULL(t2.FAMOUNT,0) - ISNULL(t3.FAMOUNT,0) + ISNULL(t4.FAMOUNT,0) - ISNULL(t5.FAMOUNT,0)) * t0.QtyRatio ) AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
,t0.FAMOUNT AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',ISNULL(t2.FAMOUNT,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',ISNULL(t3.FAMOUNT,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',ISNULL(t4.FAMOUNT,0) AS 'ί<EFBFBD><EFBFBD><EFBFBD>',ISNULL(t5.FAMOUNT,0) AS 'ί<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CASE ISNULL(t6.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) WHEN 0 THEN 0 ELSE ISNULL(t6.<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ,0)/ISNULL(t6.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0) END AS '<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB'
,(CASE LEFT(t0.MoBillNo,2) WHEN 'WO' THEN 1 WHEN 'TO' THEN 2 WHEN 'RO' THEN 3 WHEN 'RT' THEN 4 ELSE 0 END) AS 'MoType'
,CASE t0.FFORMID WHEN 'PRD_MO' THEN ISNULL(t0e.FSTOCKINQUASELAUXQTY ,0) ELSE t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A'
,t0.QtyRatio,(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> + ISNULL(t2.FQTY,0) - ISNULL(t3.FQTY,0) + ISNULL(t4.FQTY,0) - ISNULL(t5.FQTY,0)) AS 'ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>,(t0.<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD> + (ISNULL(t2.FAMOUNT,0) - ISNULL(t3.FAMOUNT,0) + ISNULL(t4.FAMOUNT,0) - ISNULL(t5.FAMOUNT,0))) AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> t0
LEFT JOIN T_PRD_MOENTRY_A t0e on t0.MoEntryId = t0e.FENTRYID
LEFT JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> t2 on t2.FMOENTRYID = t0.PMoEntryId AND t2.FMATERIALID = t0.FMATERIALID AND t2.FLOT = t0.FLOT AND t2.FFORMID = t0.FFORMID
LEFT JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> t3 on t3.FMOENTRYID = t0.PMoEntryId AND t3.FMATERIALID = t0.FMATERIALID AND t3.FLOT = t0.FLOT AND t3.FFORMID = t0.FFORMID
LEFT JOIN <><EFBFBD>ϵ<EFBFBD> t4 on t4.FMOENTRYID = t0.PMoEntryId AND t4.FMATERIALID = t0.FMATERIALID AND t4.FLOT = t0.FLOT AND t4.FFORMID = t0.FFORMID
LEFT JOIN <><CEAF><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD> t5 on t5.FMOENTRYID = t0.PMoEntryId AND t5.FMATERIALID = t0.FMATERIALID AND t5.FLOT = t0.FLOT AND t5.FFORMID = t0.FFORMID
LEFT JOIN <>ʹ<EFBFBD>ʱ<EFBFBD>鼯 t6 on t6.FPROORDERENTRYID = t0.MoEntryId
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> AS (
SELECT t0.MoBillNo
,t0.PMoBillNo
,t0.aPATH
,t0.PPATH
--,t0.MPath
,t0.lv
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>
,t0.<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.ί<EFBFBD><EFBFBD><EFBFBD>,t0.ί<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.QtyRatio
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>
--,t0.<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD> / t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD> '<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A
,t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB
,CASE t0.MoType WHEN 1 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB ELSE 0 END '<EFBFBD><EFBFBD>ͨC'
,CASE t0.MoType WHEN 2 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>D'
,CASE t0.MoType WHEN 3 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>E'
,CASE t0.MoType WHEN 4 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F'
,CASE t0.MoType WHEN 0 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>G'
,CASE t0.MoType WHEN 1 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB * t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A ELSE 0 END '<EFBFBD><EFBFBD>ͨI=C*A'
,CASE t0.MoType WHEN 2 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB * t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>J=D*A'
,CASE t0.MoType WHEN 3 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB * t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>K=E*A'
,CASE t0.MoType WHEN 4 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB * t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L=F*A'
,CASE t0.MoType WHEN 0 THEN t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB * t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A ELSE 0 END '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>M=G*A'
,MoId,MoEntryId,MoMaterialId,PMoId,PMoEntryId,PMoMaterialId,TopMaterialId,t0.FMATERIALID
,ISNULL(t7.O1,0) AS 'FO1'
,ISNULL(t7.O2,0) AS 'FO2'
,ISNULL(t7.O3,0) AS 'FO3'
,ISNULL(t7.O4,0) AS 'FO4'
,ISNULL(t7.O5,0) AS 'FO5'
,ISNULL(t7.O6,0) AS 'FO6'
,ISNULL(t7.O7,0) AS 'FO7'
,ISNULL(t7.O8,0) AS 'FO8'
,ISNULL(t7.O9,0) AS 'FO9'
,ISNULL(t7.O10,0) AS 'FO10'
,ISNULL(t7.O11,0) AS 'FO11'
,ISNULL(t7.O12,0) AS 'FO12'
,ISNULL(t7.O13,0) AS 'FO13'
,ISNULL(t7.O14,0) AS 'FO14'
,ISNULL(t7.O15,0) AS 'FO15'
,ISNULL(t7.O16,0) AS 'FO16'
,ISNULL(t1.P1,0) AS 'P1'
,ISNULL(t1.P2,0) AS 'P2'
,ISNULL(t1.P3,0) AS 'P3'
,ISNULL(t1.P4,0) AS 'P4'
,ISNULL(t1.P5,0) AS 'P5'
,ISNULL(t1.P6,0) AS 'P6'
,ISNULL(t1.P7,0) AS 'P7'
,ISNULL(t1.P8,0) AS 'P8'
,ISNULL(t1.P9,0) AS 'P9'
,ISNULL(t1.P10,0) AS 'P10'
,ISNULL(t1.P11,0) AS 'P11'
,ISNULL(t1.P12,0) AS 'P12'
,CAST(CONCAT('/',REPLACE(t0.aPATH,'.','/'),'/') AS HIERARCHYID) PATH_ID
,CAST(CONCAT('/',REPLACE(t0.PPATH,'.','/'),'/') AS HIERARCHYID) PPATH_ID
,t1.NewQtyRation AS 'CostRation'
,t7.NewQtyRation AS 'ExpRation'
FROM #<23><>ʱ<EFBFBD><CAB1><EFBFBD>ɱ<EFBFBD> t0
LEFT JOIN #<23>ɱ<EFBFBD><C9B1><EFBFBD>Ŀ t1 on t0.MoEntryId = t1.COST_BILLENTRYID
LEFT JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ t7 on t0.MoEntryId = t7.EXP_BILLENTRYID
)
SELECT *
INTO #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> t0
;WITH <><CDB3> AS (
SELECT
SUM(t1.[<EFBFBD><EFBFBD>ͨC]) AS 'C'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>D]) AS 'D'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>E]) AS 'E'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F]) AS 'F'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>G]) AS 'G'
,SUM(t1.[<EFBFBD><EFBFBD>ͨI=C*A]) AS 'I'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>J=D*A]) AS 'J'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>K=E*A]) AS 'K'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L=F*A]) AS 'L'
,SUM(t1.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>M=G*A]) AS 'M'
,SUM(t1.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>) AS 'ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>'
,SUM(t1.FO16) AS 'FO16'
,t0.aPATH
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> t0
INNER JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> t1 ON t0.lv <= t1.lv
AND t1.PATH_ID.IsDescendantOf(t0.PATH_ID) = 1
GROUP BY t0.aPATH
)
, #<23><><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD> AS (
SELECT
SUM(t0.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>) AS 'ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>'
,t1.aPATH
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> t0
INNER JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> t1 ON t0.lv <= t1.lv
AND t1.PATH_ID.IsDescendantOf(t0.PATH_ID) = 1
GROUP BY t1.aPATH
)
, #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS (
SELECT t0e.FENUMID,t0e.FSEQ,t0e.FVALUE,t0e_l.FCAPTION
FROM T_META_FORMENUMITEM t0e
INNER JOIN T_META_FORMENUMITEM_L t0e_l on t0e.FENUMID = t0e_l.FENUMID AND t0e_l.FLOCALEID = 2052
WHERE 1 = 1
AND t0e.FID = 'ac14913e-bd72-416d-a50b-2c7432bbff63'
)
SELECT t0.MoBillNo
,t0.PMoBillNo
,t0.aPATH
,t0.PPATH
,t3.FNUMBER AS '<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t3_l.FNAME AS '<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t3_l.FSPECIFICATION AS '<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD>'
,t1.FNUMBER AS '<EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><EFBFBD><EFBFBD>',t1_l.FNAME AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t1_l.FSPECIFICATION AS '<EFBFBD><EFBFBD><EFBFBD>Ϲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD>'
,t5.FCAPTION AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.QtyRatio,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>
,(CASE t0.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD> WHEN 0 THEN t0.P1 ELSE t0.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD> END) AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
,t0.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD> '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(t2.FO16 - t0.FO16,0) AS '<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>T'
,(t0.P1 + t0.P2 + t0.P3 + t0.P4 + t0.P5 + t0.P6 + t0.P7 + t0.P8 + t0.P9 + t0.P10 + t0.P11 + t0.P12) AS '<EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P'
,t0.FO2 + t0.FO3 + t0.FO4 + t0.FO5 + t0.FO6 + t0.FO7 + t0.FO8 + t0.FO9 + t0.FO10 + t0.FO11 + t0.FO12 + t0.FO13 + t0.FO14 + t0.FO15 + t2.FO16 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O'
,t2.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD> AS 'ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>Q'
,t0.FO1 AS ֱ<EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD>R
,t2.ֱ<EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD> + t0.FO2 + t0.FO3 + t0.FO4 + t0.FO5 + t0.FO6 + t0.FO7 + t0.FO8 + t0.FO9 + t0.FO10 + t0.FO11 + t0.FO12 + t0.FO13 + t0.FO14 + t0.FO15 + t2.FO16 + t0.FO1 AS '<EFBFBD>Ϲ<EFBFBD><EFBFBD><EFBFBD>S'
,t0.P1 AS <EFBFBD>ɱ<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>,t0.P2 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD>,t0.P3 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>,t0.P4 AS <EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD>,t0.P5 AS <EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD>,t0.P6 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD>۾ɷ<EFBFBD><EFBFBD><EFBFBD>
,t0.P7 AS <EFBFBD>ɱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.P8 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.P9 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.P10 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˹<EFBFBD>,t0.P11 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD>۾ɼ<EFBFBD>̯<EFBFBD><EFBFBD>,t0.P12 AS <EFBFBD>ɱ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
,t0.FO2 AS ְ<EFBFBD><EFBFBD>н<EFBFBD><EFBFBD>,t0.FO3 AS <EFBFBD>ɷ<EFBFBD>֧<EFBFBD><EFBFBD>,t0.FO4 AS <EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.FO5 AS <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>,t0.FO6 AS ҵ<EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><EFBFBD><EFBFBD>,t0.FO7 AS <EFBFBD><EFBFBD><EFBFBD>,t0.FO8 AS <EFBFBD>۾<EFBFBD><EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD>,t0.FO9 AS <EFBFBD><EFBFBD><EFBFBD>޷<EFBFBD>
,t0.FO10 AS ˮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,t0.FO11 AS <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD>,t0.FO12 AS [<EFBFBD>ӹ<EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] ,t0.FO13 AS <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>÷<EFBFBD>,t0.FO14 AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>] ,t0.FO15 AS 'ί<EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD>',t0.FO16 AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A
,t0.<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱB
,t2.C AS [<EFBFBD><EFBFBD>ͨC],t2.D AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>D],t2.E AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>E],t2.F AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>F],t2.G AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>G]
,t2.C + t2.D +t2.E + t2.F + t2.G AS [<EFBFBD>ϼ<EFBFBD>H]
,t2.I AS [<EFBFBD><EFBFBD>ͨI],t2.J AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>J],t2.K AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>K],t2.L AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L],t2.M AS [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>M]
,t2.I + t2.J + t2.K + t2.L + t2.M AS [<EFBFBD>ϼ<EFBFBD>N]
,t0.lv
,MoId,MoEntryId,PMoId,PMoEntryId,PMoMaterialId,TopMaterialId,MoMaterialId,t0.FMATERIALID
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1> t0
INNER JOIN T_BD_MATERIAL t1 on t0.FMATERIALID = t1.FMATERIALID
INNER JOIN T_BD_MATERIALBASE t1b on t1b.FMATERIALID = t0.FMATERIALID
INNER JOIN T_BD_MATERIAL_L t1_l on t0.FMATERIALID = t1_l.FMATERIALID AND t1_l.FLOCALEID = 2052
INNER JOIN <><CDB3> t2 on t0.aPATH = t2.aPATH
INNER JOIN T_BD_MATERIAL t3 on t0.TopMaterialId = t3.FMATERIALID
INNER JOIN T_BD_MATERIAL_L t3_l on t0.TopMaterialId = t3_l.FMATERIALID AND t3_l.FLOCALEID = 2052
LEFT JOIN #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> t5 on t5.FVALUE = t1b.FERPCLSID
LEFT JOIN #<23><><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD> t6 on t6.aPATH = t0.aPATH
WHERE 1 = 1
ORDER BY CAST(CONCAT('/',REPLACE(t0.aPATH,'.','/'),'/') AS HIERARCHYID)