a
This commit is contained in:
@@ -27,11 +27,15 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="POSH_CB_PROCOSTRESULTREC\产品成本还原构造程序.py" />
|
||||
<Compile Include="POSH_CB_PROCOSTRESULTREC\产品成本还原查询报表_20240819.py" />
|
||||
<Compile Include="POSH_CB_PROCOSTRESULTREC\产品成本还原查询报表构造.py" />
|
||||
<Compile Include="PRD_MO\OperationEventPlugInEx.py" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="SQLQuery2.sql" />
|
||||
<Content Include="产品成本还原分解过程报表_存储过程V9.2_20240819.sql" />
|
||||
<Content Include="产品成本还原分解过程结果汇总_存储过程V9.2_20240819.sql" />
|
||||
<Content Include="产品成本还原报AAAAAAAAAAAA.sql" />
|
||||
<Content Include="产品成本还原报表V1.0.sql" />
|
||||
<Content Include="产品成本还原报表V2.0.sql" />
|
||||
<Content Include="产品成本还原报表V3.0.sql" />
|
||||
|
||||
@@ -54,14 +54,14 @@ def ShowReturnData(resultData):
|
||||
else:
|
||||
filterString = resultData.ReturnData.FilterString;
|
||||
if filterString != None and filterString != "":
|
||||
whereSql += " AND " + filterString.replace("FBILLNO","t0.FPRODUCTNO");
|
||||
whereSql += " AND " + filterString.replace("FBILLNO","t0.FPRODUCTNO").replace("FACCTGORGID","t2.FACCTGORGID");
|
||||
|
||||
customFilter = resultData.ReturnData.CustomFilter;
|
||||
if customFilter != None:
|
||||
FYear = customFilter["FYear"]
|
||||
FPeriod = customFilter["FPeriod"]
|
||||
yearVal = 0 if FYear == None or FYear == "" else int(FYear)
|
||||
periodVal = 0 if FPeriod == None or FPeriod == "" else int(FPeriod)
|
||||
periodVal = 0 if FPeriod == None or FPeriod == "" else int(FPeriod)
|
||||
if yearVal > 0:
|
||||
if periodVal > 0:
|
||||
dateVal = str(yearVal * 100 + periodVal)
|
||||
@@ -100,12 +100,12 @@ SET @ACCTGORGID = 1
|
||||
,t3.FSUMQUALIFIEDINQTY AS '累计完工数量'
|
||||
,RANK() OVER (PARTITION BY t0.FBILLID,t0.FBILLENTRYID ORDER BY (t2.FYEAR * 100 + t2.FPERIOD) DESC) 'RN'
|
||||
,(t2.FYEAR * 100 + t2.FPERIOD) AS 'FPERIOD'
|
||||
,t2.FACCTGORGID
|
||||
FROM T_CB_PROORDERDIME t0
|
||||
INNER JOIN V_CB_PROORDERINFO t1 on t1.FPRODUCTDIMEID = t0.FPRODUCTDIMEID
|
||||
INNER JOIN V_HS_OUTACCTG t2 on t1.FACCTGID = t2.FID
|
||||
LEFT JOIN V_CB_COSTCALEXPENSE t3 on t3.FID = t1.FID
|
||||
WHERE 1 = 1
|
||||
AND t2.FACCTGORGID = @ACCTGORGID
|
||||
AND t2.FCOMPUTEID != ''
|
||||
AND t1.FENDINITKEY = 1
|
||||
AND t0.FFORMID = 'PRD_MO'
|
||||
@@ -136,21 +136,23 @@ WHERE t0.RN = 1
|
||||
|
||||
period = data["FPERIOD"]
|
||||
billNo = data["FPRODUCTNO"]
|
||||
|
||||
acctgOrgId = data["FACCTGORGID"]
|
||||
# row["FRN"] = data["FRN"]
|
||||
row["FMoBillNo"] = billNo
|
||||
row["FProMaterialNumber"] = data["FNUMBER"]
|
||||
row["FProMaterialName"] = data["FNAME"]
|
||||
row["FQUALIFIEDINQTY"] = data["本期完工数量"]
|
||||
_cResult = "错误"
|
||||
# raise Exception("AAAA2");
|
||||
num = num + 1
|
||||
this.View.Session["ProcessRateValue"] = int(num * 100/ count);
|
||||
this.View.Session["ProcessTips"] = "共{0}条数据,已处理{1}条数据,正在处理{2}".format(count,(num-1),billNo);
|
||||
|
||||
costDataList = GetExecCost(billNo,period,1)
|
||||
costDataList = GetExecCost(billNo, period, acctgOrgId)
|
||||
|
||||
if costDataList != None and costDataList.Count > 0:
|
||||
costData = costDataList[0]
|
||||
_cResult = "完成"
|
||||
row["FMaterialCostQ"] = float(costData["原材料Q1"])
|
||||
row["FLaborCostS"] = costData["直接人工S"]
|
||||
row["FProcessCostO"] = costData["制造费用O"]
|
||||
@@ -172,6 +174,7 @@ WHERE t0.RN = 1
|
||||
row["FO15"] = costData["制造费用_委外加工费"]
|
||||
row["FALLHRWORKTIME"] = costData["总工时"]
|
||||
|
||||
row["FResult"] = _cResult
|
||||
proRows.Add(row)
|
||||
# raise Exception("AAAA3");
|
||||
this.View.UpdateView("FEntity")
|
||||
|
||||
@@ -3,7 +3,6 @@ BEGIN
|
||||
DROP TABLE [dbo].[#<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>]
|
||||
END
|
||||
|
||||
|
||||
DECLARE @period int
|
||||
DECLARE @dbName varchar(100)
|
||||
DECLARE @ACCTGORGID int
|
||||
|
||||
335
07.珠海英搏尔/Enpower.Python/工单工时还原202410260937.sql
Normal file
335
07.珠海英搏尔/Enpower.Python/工单工时还原202410260937.sql
Normal file
@@ -0,0 +1,335 @@
|
||||
CREATE PROC [dbo].[CB_ActualTimeWorked_ALL]
|
||||
@billNo varchar(100)
|
||||
,@YEAR int
|
||||
,@M int
|
||||
,@ACCTGORGID int
|
||||
AS
|
||||
BEGIN
|
||||
--<EFBFBD><EFBFBD><EFBFBD>ó<EFBFBD>ʱʱ<EFBFBD><EFBFBD>
|
||||
SET QUERY_GOVERNOR_COST_LIMIT 15000
|
||||
|
||||
--declare @billNo varchar(100)
|
||||
-- ,@YEAR int
|
||||
-- ,@M int
|
||||
-- ,@ACCTGORGID int
|
||||
--SET @billNo = 'WO2409180061'
|
||||
--SET @YEAR = 2024
|
||||
--SET @M = 10
|
||||
--SET @ACCTGORGID = 1
|
||||
IF EXISTS (SELECT 1 WHERE OBJECT_ID('tempdb..#<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>') IS NOT NULL)
|
||||
BEGIN
|
||||
DROP TABLE [dbo].[#<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>]
|
||||
END
|
||||
|
||||
DECLARE @period int
|
||||
SET @period = (@YEAR * 100 + @M)
|
||||
IF (@period = 0 OR @YEAR = 0)
|
||||
BEGIN
|
||||
--SET @period = 6
|
||||
SELECT @period = t0.FVALUE * 100 + t1.FVALUE
|
||||
FROM T_BAS_SYSTEMPROFILE t0
|
||||
INNER JOIN T_BAS_SYSTEMPROFILE t1 ON t0.FORGID=t1.FORGID
|
||||
AND t0.FACCTSYSTEMID = t1.FACCTSYSTEMID AND t0.FACCTPOLICYID = t1.FACCTPOLICYID
|
||||
AND t1.FKEY IN ('CurrentPeriod')
|
||||
WHERE 1=1
|
||||
AND t0.FCATEGORY='HS'
|
||||
AND t1.FCATEGORY='HS'
|
||||
AND t0.FKEY IN ('CurrentYear')
|
||||
AND t0.FORGID = @ACCTGORGID
|
||||
END
|
||||
CREATE TABLE #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>(
|
||||
[FPRODUCTNO] nvarchar(255) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
||||
[FBILLID] int NOT NULL,
|
||||
[FBILLENTRYID] int NOT NULL,
|
||||
[FPRODUCTID] int NOT NULL,
|
||||
[FPRODUCTDIMEID] int NOT NULL,
|
||||
[FMATERIALID] int NOT NULL,
|
||||
[FEXPTYPE] char(1) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
||||
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] decimal(23,10) NOT NULL,
|
||||
[FAMOUNT] decimal(23,10) NULL,
|
||||
[FQTY] decimal(23,10) NULL,
|
||||
[FLOT] int NULL,
|
||||
[FNUMBER] nvarchar(255) COLLATE Chinese_PRC_CI_AS NULL,
|
||||
[SubBillId] int NULL,
|
||||
[SubBillEntryId] int NULL,
|
||||
[SubPRODUCTDIMEID] int NULL,
|
||||
[MPATH] nvarchar(MAX) COLLATE Chinese_PRC_CI_AS NOT NULL,
|
||||
[FGOON] int NOT NULL,
|
||||
[FLEVEL] int not null
|
||||
)
|
||||
|
||||
CREATE INDEX idx_<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_fuhesuoyin ON #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>([SubBillEntryId],[FGOON],[FLEVEL]);
|
||||
|
||||
;WITH #<23><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> AS (
|
||||
SELECT t0.FPRODUCTNO
|
||||
,t0.FBILLID
|
||||
,t0.FBILLENTRYID
|
||||
,t0.FPRODUCTID
|
||||
,t0.FFORMID
|
||||
,t3.FMATERIALID
|
||||
,t1.FPRODUCTDIMEID
|
||||
,t3.FEXPTYPE
|
||||
,t3.FSUMCURRINPUTAMOUNT '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>'
|
||||
,t3.FSUMQUALIFIEDINAMOUNT '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>'
|
||||
,t4.FSUMCURRINPUTAMOUNT '<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>'
|
||||
,t4.FSUMQUALIFIEDINAMOUNT '<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>'
|
||||
,t3.FSUMCURRINPUTQTY '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,CAST(t3.FSUMQUALIFIEDINQTY AS decimal(23,10)) '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t4.FSUMCURRINPUTQTY '<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t4.FSUMQUALIFIEDINQTY '<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,CONCAT(t0.FPRODUCTNO,'_') AS 'MPATH'
|
||||
,(t2.FYEAR * 100 + t2.FPERIOD) AS 'FPERIOD'
|
||||
,RANK() OVER (ORDER BY (t2.FYEAR * 100 + t2.FPERIOD) DESC) 'RN'
|
||||
,t3d.FSUMQUALIFIEDINAMOUNT AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t5.fieldName
|
||||
FROM T_CB_PROORDERDIME t0
|
||||
INNER JOIN V_CB_PROORDERINFO t1 on t1.FPRODUCTDIMEID = t0.FPRODUCTDIMEID
|
||||
INNER JOIN V_HS_OUTACCTG t2 on t1.FACCTGID = t2.FID
|
||||
INNER JOIN V_CB_COSTMATTERIAL t3 on t3.FID = t1.FID
|
||||
INNER JOIN V_CB_COSTMATTERIALDETAIL t3d on t3d.FENTRYID = t3.FENTRYID
|
||||
INNER JOIN V_CB_COSTCALEXPENSE t4 on t4.FID = t3.FID
|
||||
LEFT JOIN V_BD_COST_RESTORE_EXPENSE_V2 t5 on t3d.FEXPENSESITEMID = t5.FEXPID
|
||||
WHERE 1 = 1
|
||||
AND t0.FPRODUCTNO = @billNo
|
||||
AND t2.FACCTGORGID = @ACCTGORGID
|
||||
AND t2.FCOMPUTEID != ''
|
||||
AND (t2.FYEAR * 100 + t2.FPERIOD) <= @period
|
||||
AND t1.FENDINITKEY = 1
|
||||
--AND t4.FSUMQUALIFIEDINQTY != 0
|
||||
)
|
||||
, #<23>ɱ<EFBFBD>ת<EFBFBD><D7AA> AS (
|
||||
SELECT *
|
||||
FROM #<23><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> t0
|
||||
PIVOT (
|
||||
SUM(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) FOR
|
||||
t0.fieldName IN (O0,O1,O2,O3,O4,O5,O6,O7,O8,O9,O10,O11,O12,O13,O14,O15)
|
||||
) t1
|
||||
)
|
||||
INSERT INTO #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
||||
SELECT t0.FPRODUCTNO,t0.FBILLID
|
||||
,t0.FBILLENTRYID,t0.FPRODUCTID
|
||||
,t0.FPRODUCTDIMEID
|
||||
,t0.FMATERIALID
|
||||
,t0.FEXPTYPE
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,0 '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t4.FAMOUNT, 0) '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
|
||||
,ISNULL(t4.FQTY,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t4.FLOT,0) AS 'FLOT'
|
||||
,ISNULL(t5.FNUMBER,'') AS 'FLOT_TEXT'
|
||||
,t6.FBILLID SUBFBILLID
|
||||
,t6.FBILLENTRYID SUBFBILLENTRYID
|
||||
,t6.FPRODUCTDIMEID SUBFPRODUCTDIMEID
|
||||
,t0.MPATH AS 'MPATH'
|
||||
,CASE WHEN ISNULL(t6.FBILLENTRYID,0) = 0 THEN 0
|
||||
WHEN t0.FPRODUCTNO = t5.FNUMBER THEN 0
|
||||
WHEN t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 0 THEN 0
|
||||
ELSE 1 END 'FGOON'
|
||||
,0
|
||||
FROM #<23>ɱ<EFBFBD>ת<EFBFBD><D7AA> t0
|
||||
OUTER APPLY (
|
||||
SELECT t5.FLOT
|
||||
,SUM(t4.FAMOUNT) AS 'FAMOUNT',CAST(SUM(t6.FQTY) AS decimal(23,10)) AS 'FQTY'
|
||||
FROM V_CB_COSTALLORESULTSEND t4
|
||||
INNER JOIN T_HS_INIVSTOCKDIMENSION t5 on t5.FENTRYID = t4.FDIMEENTRYID AND t5.FLOT != 0
|
||||
INNER JOIN V_HS_OUTINSTOCKSEQ t6 on t6.FENTRYID = t4.FOUTINSTOCKID
|
||||
WHERE t4.FPRODUCTDIMEID = t0.FPRODUCTDIMEID AND t5.FMATERIALID = t0.FMATERIALID
|
||||
GROUP BY t5.FLOT
|
||||
) t4
|
||||
LEFT JOIN T_BD_LOTMASTER t5 on t5.FLOTID = t4.FLOT
|
||||
LEFT JOIN T_CB_PROORDERDIME t6 on t6.FPRODUCTNO = t5.FNUMBER AND t6.FPRODUCTID = t0.FMATERIALID
|
||||
WHERE t0.RN = 1
|
||||
ORDER BY t0.FPRODUCTDIMEID
|
||||
,t0.FEXPTYPE DESC
|
||||
,t0.FMATERIALID ASC
|
||||
,t4.FLOT ASC
|
||||
|
||||
DECLARE @num INT,@level int,@LoopCount int
|
||||
SET @num = 1
|
||||
SET @level =1
|
||||
SET @LoopCount = 0;
|
||||
WHILE(@num!=0 AND @LoopCount < 30)
|
||||
BEGIN
|
||||
;WITH #<23><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> AS (
|
||||
SELECT t0.FPRODUCTNO
|
||||
,t0.FBILLID
|
||||
,t0.FBILLENTRYID
|
||||
,t0.FPRODUCTID
|
||||
,t0.FFORMID
|
||||
,t3.FMATERIALID
|
||||
,t1.FPRODUCTDIMEID
|
||||
,t3.FEXPTYPE
|
||||
,t3.FSUMCURRINPUTQTY '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t3.FSUMCURRINPUTAMOUNT '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>'
|
||||
,t3.FSUMQUALIFIEDINQTY '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t3.FSUMQUALIFIEDINAMOUNT '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>'
|
||||
,t4.FSUMCURRINPUTQTY '<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t4.FSUMCURRINPUTAMOUNT '<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>'
|
||||
,t4.FSUMQUALIFIEDINQTY '<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t4.FSUMQUALIFIEDINAMOUNT '<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>'
|
||||
,CONCAT(tt.MPATH,t0.FPRODUCTNO,'_') AS 'MPATH'
|
||||
,(t2.FYEAR * 100 + t2.FPERIOD) AS 'FPERIOD'
|
||||
,RANK() OVER (PARTITION BY t0.FBILLID,t0.FBILLENTRYID ORDER BY (t2.FYEAR * 100 + t2.FPERIOD) DESC) 'RN'
|
||||
,tt.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD> AS '<EFBFBD>ϼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>'
|
||||
,CAST(CASE WHEN t4.FSUMQUALIFIEDINAMOUNT = 0 THEN 1 ELSE tt.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD> / t4.FSUMQUALIFIEDINAMOUNT END AS decimal(23,10)) AS '<EFBFBD>깤ռ<EFBFBD><EFBFBD>'
|
||||
,t3d.FSUMQUALIFIEDINAMOUNT AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t5.fieldName
|
||||
,tt.FQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
FROM #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD> tt
|
||||
INNER JOIN T_CB_PROORDERDIME t0 on tt.SubBillEntryId = t0.FBILLENTRYID
|
||||
--AND tt.SubBillId = t0.FBILLID AND tt.SubPRODUCTDIMEID = t0.FPRODUCTDIMEID
|
||||
INNER JOIN V_CB_PROORDERINFO t1 on t1.FPRODUCTDIMEID = t0.FPRODUCTDIMEID AND t1.FENDINITKEY = 1
|
||||
INNER JOIN V_HS_OUTACCTG t2 on t1.FACCTGID = t2.FID
|
||||
INNER JOIN V_CB_COSTMATTERIAL t3 on t3.FID = t1.FID
|
||||
LEFT JOIN V_CB_COSTMATTERIALDETAIL t3d on t3d.FENTRYID = t3.FENTRYID
|
||||
INNER JOIN V_CB_COSTCALEXPENSE t4 on t4.FID = t3.FID
|
||||
LEFT JOIN V_BD_COST_RESTORE_EXPENSE_V2 t5 on t3d.FEXPENSESITEMID = t5.FEXPID
|
||||
WHERE 1 = 1
|
||||
AND tt.FGOON > 0
|
||||
AND tt.FLEVEL > @level - 2
|
||||
AND t2.FACCTGORGID = @ACCTGORGID
|
||||
AND t2.FCOMPUTEID != ''
|
||||
AND t1.FENDINITKEY = 1
|
||||
--AND t4.FSUMQUALIFIEDINQTY != 0
|
||||
AND tt.FLEVEL < 2
|
||||
)
|
||||
, #<23>ɱ<EFBFBD>ת<EFBFBD><D7AA> AS (
|
||||
SELECT *
|
||||
FROM #<23><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD> t0
|
||||
PIVOT (
|
||||
SUM(t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) FOR
|
||||
t0.fieldName IN (O0,O1,O2,O3,O4,O5,O6,O7,O8,O9,O10,O11,O12,O13,O14,O15)
|
||||
) t1
|
||||
)
|
||||
INSERT INTO #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
||||
SELECT t0.FPRODUCTNO,t0.FBILLID,t0.FBILLENTRYID,t0.FPRODUCTID
|
||||
,t0.FPRODUCTDIMEID
|
||||
,t0.FMATERIALID
|
||||
,t0.FEXPTYPE
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.[<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,ISNULL(t4.FAMOUNT, 0) '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
|
||||
,ISNULL(t4.FQTY,0) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,ISNULL(t4.FLOT,0) AS 'FLOT'
|
||||
,ISNULL(t5.FNUMBER,'') AS 'FLOT_TEXT'
|
||||
,t6.FBILLID SUBFBILLID
|
||||
,t6.FBILLENTRYID SUBFBILLENTRYID
|
||||
,t6.FPRODUCTDIMEID SUBFPRODUCTDIMEID
|
||||
,t0.MPATH AS 'MPATH'
|
||||
,CASE WHEN ISNULL(t6.FBILLENTRYID,0) = 0 THEN 0
|
||||
WHEN CHARINDEX(CONCAT(t5.FNUMBER,'_'),t0.MPATH) > 0 THEN 0
|
||||
WHEN t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 0 THEN 0
|
||||
ELSE 1 END 'FGOON'
|
||||
,@level AS 'Flevel'
|
||||
FROM #<23>ɱ<EFBFBD>ת<EFBFBD><D7AA> t0
|
||||
OUTER APPLY (
|
||||
SELECT t5.FLOT
|
||||
,SUM(t4.FAMOUNT) AS 'FAMOUNT',CAST(SUM(t6.FQTY) AS decimal(23,10)) AS 'FQTY'
|
||||
FROM V_CB_COSTALLORESULTSEND t4
|
||||
INNER JOIN T_HS_INIVSTOCKDIMENSION t5 on t5.FENTRYID = t4.FDIMEENTRYID AND t5.FLOT != 0
|
||||
INNER JOIN V_HS_OUTINSTOCKSEQ t6 on t6.FENTRYID = t4.FOUTINSTOCKID
|
||||
WHERE t4.FPRODUCTDIMEID = t0.FPRODUCTDIMEID AND t5.FMATERIALID = t0.FMATERIALID
|
||||
GROUP BY t5.FLOT
|
||||
) t4
|
||||
LEFT JOIN T_BD_LOTMASTER t5 on t5.FLOTID = t4.FLOT
|
||||
LEFT JOIN T_CB_PROORDERDIME t6 on t6.FPRODUCTNO = t5.FNUMBER AND t6.FPRODUCTID = t0.FMATERIALID
|
||||
WHERE t0.RN = 1
|
||||
ORDER BY t0.FPRODUCTDIMEID
|
||||
,t0.FEXPTYPE DESC
|
||||
,t0.FMATERIALID ASC
|
||||
,t4.FLOT ASC
|
||||
|
||||
SET @num = @@ROWCOUNT
|
||||
SET @level += 1
|
||||
SET @LoopCount += 1
|
||||
|
||||
--IF(@num > 50000)
|
||||
--BEGIN
|
||||
-- SET @LoopCount = 30
|
||||
--END
|
||||
|
||||
UPDATE STATISTICS #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD> idx_<78><5F>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>_fuhesuoyin
|
||||
END
|
||||
|
||||
|
||||
;WITH #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS (
|
||||
SELECT t0.FPRODUCTNO AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0.FBILLID,t0.FBILLENTRYID,t0.FPRODUCTID,t0.FPRODUCTDIMEID,t0.FMATERIALID
|
||||
,t0.FEXPTYPE
|
||||
,CASE t0.FEXPTYPE WHEN 0 THEN 'ֱ<EFBFBD>ӷ<EFBFBD><EFBFBD><EFBFBD>' WHEN 1 THEN '<EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD><EFBFBD><EFBFBD>' WHEN 2 THEN '<EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD>' WHEN 9 THEN '<EFBFBD><EFBFBD>ʱ' ELSE '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.FNUMBER AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0.FGOON AS 'ִ<EFBFBD>зֽ<EFBFBD>'
|
||||
,t0.FLEVEL AS '<EFBFBD>㼶'
|
||||
,t0.MPATH AS '<EFBFBD>ֽ<EFBFBD>·<EFBFBD><EFBFBD>'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>ƷͶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,CASE t0.FEXPTYPE WHEN 9 THEN t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,CASE t0.FEXPTYPE WHEN 9 THEN t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END AS '<EFBFBD><EFBFBD>ʱU_<EFBFBD>㱨<EFBFBD><EFBFBD>ʱ'
|
||||
,t0.FAMOUNT AS '<EFBFBD><EFBFBD><EFBFBD>ϳɱ<EFBFBD>'
|
||||
,t0.FQTY AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0.FLOT
|
||||
,t0.SubBillId
|
||||
,t0.SubBillEntryId
|
||||
,t0.SubPRODUCTDIMEID
|
||||
FROM #<23><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD> t0
|
||||
WHERE 1=1
|
||||
--AND t0.FGOON = 0
|
||||
)
|
||||
SELECT t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t2.FNUMBER AS '<EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t2_l.FNAME AS '<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>'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD>ɱ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD>ʱU_<EFBFBD>㱨<EFBFBD><EFBFBD>ʱ
|
||||
,t0.<EFBFBD><EFBFBD>ʱU_<EFBFBD>㱨<EFBFBD><EFBFBD>ʱ / t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS '<EFBFBD><EFBFBD>ʱU_<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>ʱ'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS '<EFBFBD><EFBFBD>ʱU_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * (t0.<EFBFBD><EFBFBD>ʱU_<EFBFBD>㱨<EFBFBD><EFBFBD>ʱ / t0.<EFBFBD><EFBFBD>Ʒ<EFBFBD>깤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) AS '<EFBFBD><EFBFBD>ʱU_<EFBFBD>ܹ<EFBFBD>ʱ'
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.ִ<EFBFBD>зֽ<EFBFBD>
|
||||
,t0.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD>ֽ<EFBFBD>·<EFBFBD><EFBFBD>
|
||||
,t0.<EFBFBD>㼶
|
||||
FROM #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> t0
|
||||
LEFT JOIN T_BD_MATERIAL t1 on t0.FMATERIALID = t1.FMATERIALID
|
||||
LEFT JOIN T_BD_MATERIAL_L t1_l on t1_l.FMATERIALID = t0.FMATERIALID AND t1_l.FLOCALEID = 2052
|
||||
LEFT JOIN T_BD_MATERIAL t2 on t2.FMATERIALID = t0.FPRODUCTID
|
||||
LEFT JOIN T_BD_MATERIAL_L t2_l on t2_l.FMATERIALID = t0.FPRODUCTID AND t2_l.FLOCALEID = 2052
|
||||
--WHERE t0.FEXPTYPE = 9
|
||||
ORDER BY t0.<EFBFBD>㼶
|
||||
,t0.FPRODUCTID DESC
|
||||
,t0.FEXPTYPE
|
||||
,t0.FMATERIALID
|
||||
end
|
||||
Reference in New Issue
Block a user