This commit is contained in:
余宇波 2025-06-25 15:08:28 +08:00
parent 2a21065aa6
commit a58515c3cb
3 changed files with 1488 additions and 34 deletions

View File

@ -124,17 +124,18 @@ SELECT A.FID [
,[]=CASE WHEN a.F_YYS = 0 THEN '' ELSE '' END
,[]= 0
----,CASE WHEN A.F_OrderType in ('仪表','YB') THEN '元器件' ELSE s.FCAPTION END AS '结算类别' ----#,当值为仪表时,改成元器件,其他为系统
--,[]=(SELECT TOP 1 CASE WHEN s.FCAPTION = '仪表' THEN '元器件' ELSE s.FCAPTION END FROM T_META_FORMENUMITEM R WITH(NOLOCK)
--LEFT JOIN T_META_FORMENUMITEM_L S WITH(NOLOCK) ON S.FENUMID = R.FENUMID AND S.FLOCALEID = 2052
-- WHERE r.FVALUE = A.F_OrderType )
,'' ,''
--,(SELECT TOP 1 CASE WHEN S.FCAPTION = '仪表' AND a.F_XMYSSJ <> '' THEN '项目已做完,回部分款'
-- WHEN S.FCAPTION = '仪表' AND a.F_XMYSSJ = '' THEN '项目未完工,欠款合同'
-- WHEN S.FCAPTION <> '仪表' AND w.FID IS NOT NULL THEN '款到发货'
-- WHEN S.FCAPTION <> '仪表' AND w.FID IS NOT NULL THEN '协议付款'
-- ELSE '预收款+到货/调试款+质保金' END FROM T_META_FORMENUMITEM R
--LEFT JOIN T_META_FORMENUMITEM_L S ON S.FENUMID = R.FENUMID AND S.FLOCALEID = 2052
-- WHERE r.FVALUE = A.F_OrderType) AS '结算类型'
,[]=(SELECT TOP 1 CASE WHEN s.FCAPTION = '仪表' THEN '元器件' ELSE s.FCAPTION END FROM T_META_FORMENUMITEM R WITH(NOLOCK)
LEFT JOIN T_META_FORMENUMITEM_L S WITH(NOLOCK) ON S.FENUMID = R.FENUMID AND S.FLOCALEID = 2052
WHERE r.FVALUE = A.F_OrderType )
--,''
--,''
,(SELECT TOP 1 CASE WHEN S.FCAPTION = '仪表' AND a.F_XMYSSJ <> '' THEN '项目已做完,回部分款'
WHEN S.FCAPTION = '仪表' AND a.F_XMYSSJ = '' THEN '项目未完工,欠款合同'
WHEN S.FCAPTION <> '仪表' AND w.FID IS NOT NULL THEN '款到发货'
WHEN S.FCAPTION <> '仪表' AND w.FID IS NOT NULL THEN '协议付款'
ELSE '预收款+到货/调试款+质保金' END FROM T_META_FORMENUMITEM R
LEFT JOIN T_META_FORMENUMITEM_L S ON S.FENUMID = R.FENUMID AND S.FLOCALEID = 2052
WHERE r.FVALUE = A.F_OrderType) AS '结算类型'
,'' AS '转专责小组时间'
,'' AS '是否超账龄转出'
,'' AS '超账龄是否申请归还大区' --
@ -504,7 +505,7 @@ GO
--SELECT * FROM ZRP_YingShouMingXi_yuyubo
--TRUNCATE TABLE dbo.ReceivablesDetailsTable;
--EXEC PR_YingShouMingXi_yuyubo
@ -522,4 +523,6 @@ GO
--FROM ( SELECT a.FID,a.F_AMOUNT,b.F_MBBA_DECIMAL_UKY FROM T_SAL_ORDER a LEFT JOIN T_SAL_ORDERPLAN b
--ON a.FID=b.FID WHERE a.F_AMOUNT <F_MBBA_DECIMAL_UKY) b
--WHERE T_SAL_ORDER.fid=b.fid
------COMMIT
------COMMIT

View File

@ -1,7 +1,10 @@
--@<EFBFBD> CS202412060026S202501210022XS202502240044XCS202502100019\\\S202505260034X
--P202505060031 CS202504280041
---
SELECT A.FID AS FID
--INTO #TEMP3
INTO #PaiChuGongSi
FROM T_SAL_ORDER A
INNER JOIN T_BD_CUSTOMER_L C
ON C.FCUSTID = A.FCUSTID
@ -24,13 +27,12 @@ WHERE A.FSALEORGID = 100302
OR ACL. = '碳索智控'
OR C.FNAME IN ( '派诺科技(香港)有限公司', '武汉派诺科技发展有限公司', '珠海华夏云联技术有限公司', '广东碳索智控科技有限公司', '武汉派诺科技发展有限公司', '珠海兴诺能源技术有限公司','广东诺瓦数能科技有限公司' )
OR L.FNAME = '兴诺总'
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') >= '2025-06-01 00:00:00'
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') <= '2025-06-20 00:00:00';
;
/*dialect*/
--- 取变更合同
SELECT *
INTO #TABLEXYX
INTO #BianGengHeTong
FROM
(
SELECT A.FID
@ -158,7 +160,7 @@ SELECT A.FBILLNO AS 'AFBILLNO',
NULL
END AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' --
INTO #TempTable1
INTO #YiBiaoHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
@ -398,7 +400,8 @@ FROM T_SAL_ORDERENTRY B --
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
) H7
ON B.FENTRYID = H7.FSID
WHERE D.FNUMBER IN ( 'P', 'E', 'C', 'S' )
WHERE
(D.FNUMBER IN ( 'P', 'E', 'C', 'S' ))
AND B.F_SPECIALOFFER = '1'
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
@ -407,18 +410,17 @@ WHERE D.FNUMBER IN ( 'P', 'E', 'C', 'S' )
AND A.FMANUALCLOSE = '0'
AND A.FID IN
(
SELECT * FROM #TABLEXYX
SELECT * FROM #BianGengHeTong
)
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #TEMP3
SELECT FID FROM #PaiChuGongSi
)
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') >= '2025-06-01 00:00:00'
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') <= '2025-06-20 00:00:00';
;
--1.1.<
--1.2.
@ -537,7 +539,7 @@ SELECT A.FBILLNO AS 'AFBILLNO',
NULL
END AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' --
INTO #TempTable2
INTO #XiTongHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
@ -779,32 +781,803 @@ FROM T_SAL_ORDERENTRY B --
ON B.FENTRYID = H7.FSID
--ESWSXCWDCY
WHERE D.FNUMBER NOT IN ( 'P', 'E', 'C', 'S' )
AND (A.F_YKQC_CHECKBOX_QTR1 = 1 OR a.F_GROSSMARGIN1='<35%')
AND (A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%')
AND B.FQTY >= 0
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND A.FMANUALCLOSE = '0'
AND A.FID IN
(
SELECT * FROM #TABLEXYX
SELECT * FROM #BianGengHeTong
)
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.FID NOT IN
(
SELECT FID FROM #TEMP3
SELECT FID FROM #PaiChuGongSi
) ;
--CSCW
SELECT A.FBILLNO AS 'AFBILLNO',
A.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
E.FNAME AS 'Client', --
F.FNAME AS 'Currency', --
ISNULL(E.FDATAVALUE, '') AS 'CreditType', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
ISNULL(G.FSPECIFICATION, '') AS 'SizeModel', --
B.FQTY - ISNULL(B3.FRETNOTICEQTY, 0) AS 'Quantity', --
B2.FTAXPRICE AS 'TaxPrice', --
B2.FALLAMOUNT_LC - ISNULL(ABS(B3.FALLAMOUNT_LC), 0) AS 'AllAmount', --
ISNULL(H.FNAME, '') AS 'ProjectName', --
ISNULL(H2.FNAME, '') AS 'SalerName', --
ISNULL(H3.FNAME, '') AS 'SaleDeptName', --
ISNULL(H4.FNAME, '') AS 'Supervisor', --
H5.FDATAVALUE AS 'SpecialCauseType', --
A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因
CASE
WHEN A.F_ORDERTYPE = 'YB' THEN
B.F_SETTLEMENTP
ELSE
NULL
END AS 'CurrentSettledUpset1', --
CASE
WHEN A.F_ORDERTYPE = 'XT'
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
ELSE
NULL
END AS 'CurrentSettledUpset2', --
(B2.FTAXPRICE - B.F_SETTLEMENTP) AS 'Difference', ---
--PCES
CASE
WHEN
(
D.FNUMBER = 'P'
OR D.FNUMBER = 'C'
OR D.FNUMBER = 'E'
OR D.FNUMBER = 'S'
) THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) --
--ESWSXDCY
WHEN (
D.FNUMBER = 'ES'
OR D.FNUMBER = 'W'
OR D.FNUMBER = 'SX'
OR D.FNUMBER = 'D'
OR D.FNUMBER = 'CY'
)
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
--CSCW
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID = 100303 THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY)
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID != 100303
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
ELSE
NULL
END AS 'TotalSpread', --
C2.FNAME + ',' + TRY_CAST(FLOOR(C2.F_DAY) AS NVARCHAR(MAX)) + '天,'
+ TRY_CAST(FLOOR(C2.FRECADVANCERATE) AS NVARCHAR(MAX)) + '%' AS 'PaymentMethods', --
CASE
WHEN A.F_ORDERTYPE = 'YB' THEN
'仪表合同' --
WHEN A.F_ORDERTYPE = 'XT' THEN --
(CASE
WHEN ISNULL(A.F_XMYSSJ, '') != '' THEN
CONVERT(NVARCHAR, A.F_XMYSSJ, 23)
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) <= 0 THEN
'发货完成'
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) = C.FBILLALLAMOUNT_LC
- ISNULL(
ABS(B3.FBillAllAmount_LC),
0
) THEN
'未发货'
ELSE
'部分发货'
END
)
ELSE
''
END AS 'ProjectPhase', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0)
ELSE
NULL
END AS 'OrderAllAmount', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0)
ELSE
NULL
END AS 'NotShipmentsAmount', --
CASE
WHEN CONVERT(NVARCHAR(10), DATEADD(DAY, ISNULL(C2.F_DAY, 0), C2.F_PMSDATE), 23) > GETDATE()
AND C2.FRECADVANCEAMOUNT > C2.FRECAMOUNT
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C2.FRECADVANCEAMOUNT - C2.FRECAMOUNT
ELSE
NULL
END AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' --
INTO #XNChongDianZhuangHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT Aq2.FBillAllAmount_LC,
Aq.*
FROM
(
SELECT W2.FSID,
W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSID,
W2.FSBILLID
) Aq
JOIN
(
SELECT W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FBillAllAmount_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSBILLID
) Aq2
ON Aq.FSBILLID = Aq2.FSBILLID
) B3 ---退
ON B.FENTRYID = B3.FSID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_SAL_ORDERPLAN q1
JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_RECCONDITION q1
LEFT JOIN T_BD_RECCONDITION_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) q2
ON q1.F_RECCONDITIONID = q2.FID
) C2 --_收款计划
ON A.FID = C2.FID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
LEFT JOIN
(
SELECT A2.FDATAVALUE,
A1.*
FROM
(
SELECT q2.FNAME,
q1.*
FROM T_BD_CUSTOMER q1
JOIN T_BD_CUSTOMER_L q2
ON q1.FCUSTID = q2.FCUSTID
) A1
LEFT JOIN
(
SELECT A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '673af6092e2877'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) A2
ON A1.F_CREDITCLASSIFICATION = A2.FMASTERID
) E --_L表
ON A.FCUSTID = E.FCUSTID
LEFT JOIN
(SELECT * FROM T_BD_CURRENCY_L WHERE FLOCALEID = 2052) F --
ON C.FSETTLECURRID = F.FCURRENCYID
LEFT JOIN
(
SELECT B.FNAME,
B.FSPECIFICATION,
A.*
FROM T_BD_MATERIAL A
JOIN T_BD_MATERIAL_L B
ON A.FMATERIALID = B.FMATERIALID
WHERE B.FLOCALEID = 2052
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) G --
ON G.FMATERIALID = B.FMATERIALID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BAS_PREBDONE q1
JOIN T_BAS_PREBDONE_L q2
ON q1.FID = q2.FID
WHERE q2.FLocaleID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H --1
ON H.FID = A.F_PROJECTNAME
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM V_BD_SALESMAN q1
LEFT JOIN V_BD_SALESMAN_L q2
ON q1.fid = q2.fid
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
AND q1.FFORBIDDENSTATUS = '0'
) H2 --
ON A.FSALERID = H2.fid
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_DEPARTMENT q1
JOIN T_BD_DEPARTMENT_L q2
ON q1.FDEPTID = q2.FDEPTID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H3 --
ON A.FSALEDEPTID = H3.FDEPTID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_HR_EMPINFO q1
JOIN T_HR_EMPINFO_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H4 --#(员工表)
ON A.F_VRYF_BASE_FG2 = H4.FID
LEFT JOIN
(
SELECT A.FNUMBER,
A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '674f073de0bc25'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) H5
ON H5.FMASTERID = A.FSPECIALRESON
LEFT JOIN
(
SELECT W2.FSID,
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q2.FALLAMOUNT_LC,
q2.FENTRYID
FROM T_SAL_DELIVERYNOTICE q1
JOIN T_SAL_DELIVERYNOTICEENTRY_F q2
ON q1.FID = q2.FID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
) W1
JOIN T_SAL_DELIVERYNOTICEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
GROUP BY W2.FSID
) H6 --
ON B.FENTRYID = H6.FSID
LEFT JOIN
(
SELECT W2.FSID,
W1.*
FROM
(
SELECT B.FALLAMOUNTFOR,
B.FENTRYID
FROM T_AR_RECEIVABLE A
JOIN T_AR_RECEIVABLEENTRY B
ON A.FID = B.FID
WHERE A.FDOCUMENTSTATUS = 'C'
AND B.FORDERNUMBER != ''
AND A.FENDDATE <= GETDATE()
) W1
JOIN T_AR_RECEIVABLEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
) H7
ON B.FENTRYID = H7.FSID
WHERE
(D.FNUMBER IN ('CS','CW' ))
AND B.F_SPECIALOFFER = '1'
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND B.FQTY >= 0
AND A.FMANUALCLOSE = '0'
AND A.FID IN
(
SELECT * FROM #BianGengHeTong
)
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') >= '2025-06-01 00:00:00'
AND FORMAT(A.FAPPROVEDATE, 'yyyy-MM-dd') <= '2025-06-20 00:00:00';
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
)
AND G.FNUMBER LIKE 'V%'
;
--CSCW
SELECT A.FBILLNO AS 'AFBILLNO',
A.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
E.FNAME AS 'Client', --
F.FNAME AS 'Currency', --
ISNULL(E.FDATAVALUE, '') AS 'CreditType', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
ISNULL(G.FSPECIFICATION, '') AS 'SizeModel', --
B.FQTY - ISNULL(B3.FRETNOTICEQTY, 0) AS 'Quantity', --
B2.FTAXPRICE AS 'TaxPrice', --
B2.FALLAMOUNT_LC - ISNULL(ABS(B3.FALLAMOUNT_LC), 0) AS 'AllAmount', --
ISNULL(H.FNAME, '') AS 'ProjectName', --
ISNULL(H2.FNAME, '') AS 'SalerName', --
ISNULL(H3.FNAME, '') AS 'SaleDeptName', --
ISNULL(H4.FNAME, '') AS 'Supervisor', --
H5.FDATAVALUE AS 'SpecialCauseType', --
A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因
CASE
WHEN A.F_ORDERTYPE = 'YB' THEN
B.F_SETTLEMENTP
ELSE
NULL
END AS 'CurrentSettledUpset1', --
CASE
WHEN A.F_ORDERTYPE = 'XT'
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
ELSE
NULL
END AS 'CurrentSettledUpset2', --
(B2.FTAXPRICE - B.F_SETTLEMENTP) AS 'Difference', ---
--PCES
CASE
WHEN
(
D.FNUMBER = 'P'
OR D.FNUMBER = 'C'
OR D.FNUMBER = 'E'
OR D.FNUMBER = 'S'
) THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) --
--ESWSXDCY
WHEN (
D.FNUMBER = 'ES'
OR D.FNUMBER = 'W'
OR D.FNUMBER = 'SX'
OR D.FNUMBER = 'D'
OR D.FNUMBER = 'CY'
)
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
--CSCW
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID = 100303 THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY)
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID != 100303
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
ELSE
NULL
END AS 'TotalSpread', --
C2.FNAME + ',' + TRY_CAST(FLOOR(C2.F_DAY) AS NVARCHAR(MAX)) + '天,'
+ TRY_CAST(FLOOR(C2.FRECADVANCERATE) AS NVARCHAR(MAX)) + '%' AS 'PaymentMethods', --
CASE
WHEN A.F_ORDERTYPE = 'YB' THEN
'仪表合同' --
WHEN A.F_ORDERTYPE = 'XT' THEN --
(CASE
WHEN ISNULL(A.F_XMYSSJ, '') != '' THEN
CONVERT(NVARCHAR, A.F_XMYSSJ, 23)
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) <= 0 THEN
'发货完成'
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) = C.FBILLALLAMOUNT_LC
- ISNULL(
ABS(B3.FBillAllAmount_LC),
0
) THEN
'未发货'
ELSE
'部分发货'
END
)
ELSE
''
END AS 'ProjectPhase', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0)
ELSE
NULL
END AS 'OrderAllAmount', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0)
ELSE
NULL
END AS 'NotShipmentsAmount', --
CASE
WHEN CONVERT(NVARCHAR(10), DATEADD(DAY, ISNULL(C2.F_DAY, 0), C2.F_PMSDATE), 23) > GETDATE()
AND C2.FRECADVANCEAMOUNT > C2.FRECAMOUNT
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C2.FRECADVANCEAMOUNT - C2.FRECAMOUNT
ELSE
NULL
END AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' --
INTO #PLChongDianZhuangHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT Aq2.FBillAllAmount_LC,
Aq.*
FROM
(
SELECT W2.FSID,
W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSID,
W2.FSBILLID
) Aq
JOIN
(
SELECT W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FBillAllAmount_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSBILLID
) Aq2
ON Aq.FSBILLID = Aq2.FSBILLID
) B3 ---退
ON B.FENTRYID = B3.FSID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_SAL_ORDERPLAN q1
JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_RECCONDITION q1
LEFT JOIN T_BD_RECCONDITION_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) q2
ON q1.F_RECCONDITIONID = q2.FID
) C2 --_收款计划
ON A.FID = C2.FID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
LEFT JOIN
(
SELECT A2.FDATAVALUE,
A1.*
FROM
(
SELECT q2.FNAME,
q1.*
FROM T_BD_CUSTOMER q1
JOIN T_BD_CUSTOMER_L q2
ON q1.FCUSTID = q2.FCUSTID
) A1
LEFT JOIN
(
SELECT A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '673af6092e2877'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) A2
ON A1.F_CREDITCLASSIFICATION = A2.FMASTERID
) E --_L表
ON A.FCUSTID = E.FCUSTID
LEFT JOIN
(SELECT * FROM T_BD_CURRENCY_L WHERE FLOCALEID = 2052) F --
ON C.FSETTLECURRID = F.FCURRENCYID
LEFT JOIN
(
SELECT B.FNAME,
B.FSPECIFICATION,
A.*
FROM T_BD_MATERIAL A
JOIN T_BD_MATERIAL_L B
ON A.FMATERIALID = B.FMATERIALID
WHERE B.FLOCALEID = 2052
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) G --
ON G.FMATERIALID = B.FMATERIALID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BAS_PREBDONE q1
JOIN T_BAS_PREBDONE_L q2
ON q1.FID = q2.FID
WHERE q2.FLocaleID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H --1
ON H.FID = A.F_PROJECTNAME
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM V_BD_SALESMAN q1
LEFT JOIN V_BD_SALESMAN_L q2
ON q1.fid = q2.fid
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
AND q1.FFORBIDDENSTATUS = '0'
) H2 --
ON A.FSALERID = H2.fid
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_DEPARTMENT q1
JOIN T_BD_DEPARTMENT_L q2
ON q1.FDEPTID = q2.FDEPTID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H3 --
ON A.FSALEDEPTID = H3.FDEPTID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_HR_EMPINFO q1
JOIN T_HR_EMPINFO_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H4 --#(员工表)
ON A.F_VRYF_BASE_FG2 = H4.FID
LEFT JOIN
(
SELECT A.FNUMBER,
A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '674f073de0bc25'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) H5
ON H5.FMASTERID = A.FSPECIALRESON
LEFT JOIN
(
SELECT W2.FSID,
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q2.FALLAMOUNT_LC,
q2.FENTRYID
FROM T_SAL_DELIVERYNOTICE q1
JOIN T_SAL_DELIVERYNOTICEENTRY_F q2
ON q1.FID = q2.FID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
) W1
JOIN T_SAL_DELIVERYNOTICEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
GROUP BY W2.FSID
) H6 --
ON B.FENTRYID = H6.FSID
LEFT JOIN
(
SELECT W2.FSID,
W1.*
FROM
(
SELECT B.FALLAMOUNTFOR,
B.FENTRYID
FROM T_AR_RECEIVABLE A
JOIN T_AR_RECEIVABLEENTRY B
ON A.FID = B.FID
WHERE A.FDOCUMENTSTATUS = 'C'
AND B.FORDERNUMBER != ''
AND A.FENDDATE <= GETDATE()
) W1
JOIN T_AR_RECEIVABLEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
) H7
ON B.FENTRYID = H7.FSID
WHERE
(D.FNUMBER IN ('CS','CW' ))
AND B.F_SPECIALOFFER = '1'
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND B.FQTY >= 0
AND A.FMANUALCLOSE = '0'
AND A.FID IN
(
SELECT * FROM #BianGengHeTong
)
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
)
AND G.FNUMBER not LIKE 'V%'
;
--PCES<
/*dialect*/
SELECT *
INTO #TempTable3
FROM #TempTable1
FROM #YiBiaoHeTong
UNION ALL
SELECT *
FROM #TempTable2;
FROM #XiTongHeTong
UNION ALL
SELECT *
FROM #XNChongDianZhuangHeTong
UNION ALL
SELECT *
FROM #PLChongDianZhuangHeTong
;
SELECT *
INTO #TempTable4
@ -814,7 +1587,7 @@ WHERE 1 = 1;
SELECT *,
ROW_NUMBER() OVER (ORDER BY ContractNumber, t1.Sort DESC) AS FID,
ROW_NUMBER() OVER (ORDER BY ContractNumber, t1.Sort DESC) AS FIDENTITYID
INTO TMP5CAD9BB84D8011F0AD6E90F6533
INTO #TMP5CAD9BB84D8011F0AD6E90F6533
FROM
(
SELECT *,
@ -856,5 +1629,10 @@ FROM
) t1
ORDER BY Sort DESC;
--@<EFBFBD> CS202412060026S202501210022XS202502240044XCS202502100019\\\S202505260034X
--P202505060031 CS202504280041
SELECT * FROM #TMP5CAD9BB84D8011F0AD6E90F6533
WHERE ContractNumber='S202501210022X'
--SELECT * FROM TMP5CAD9BB84D8011F0AD6E90F6533
--DROP TABLE #PaiChuGongSi ,#BianGengHeTong , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3, #TempTable4 ,#TMP5CAD9BB84D8011F0AD6E90F6533,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong

673
特价明细表SQL22.sql Normal file
View File

@ -0,0 +1,673 @@
--@<EFBFBD> CS202412060026S202501210022XS202502240044XCS202502100019\\\S202505260034X
--P202505060031 CS202504280041
---
SELECT A.FID AS FID
INTO #PaiChuGongSi
FROM T_SAL_ORDER A
INNER JOIN T_BD_CUSTOMER_L C
ON C.FCUSTID = A.FCUSTID
AND C.FLOCALEID = 2052
LEFT JOIN V_BD_SALESMAN_L L
ON L.fid = A.FSALERID
LEFT JOIN T_PerformanceSharing M
ON M.FSOURCEBILLNO = A.FBILLNO
AND M.FDOCUMENTSTATUS = 'C'
LEFT JOIN T_PerformanceSharingEntry N
ON N.FID = M.FID
LEFT JOIN V_BD_SALESMAN_L O
ON O.fid = N.FSALEID
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO
ON ACO. = O.FNAME
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL
ON ACL. = L.FNAME
WHERE A.FSALEORGID = 100302
AND ACO. = '碳索智控'
OR ACL. = '碳索智控'
OR C.FNAME IN ( '派诺科技(香港)有限公司', '武汉派诺科技发展有限公司', '珠海华夏云联技术有限公司', '广东碳索智控科技有限公司', '武汉派诺科技发展有限公司', '珠海兴诺能源技术有限公司','广东诺瓦数能科技有限公司' )
OR L.FNAME = '兴诺总'
;
---
SELECT A.FBILLNO AS 'AFBILLNO',
'YB' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#YiBiaoHeTong' AS TableName
INTO #YiBiaoHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
WHERE
(D.FNUMBER IN ( 'P', 'E', 'C', 'S' ))
AND B.F_SPECIALOFFER = '1'
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND B.FQTY >= 0
AND A.FMANUALCLOSE = '0'
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
)
;
--1.1.<
--1.2.
/*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO',
'XT' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#XiTongHeTong' AS TableName
INTO #XiTongHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
--ESWSXCWDCY
WHERE D.FNUMBER NOT IN ( 'P', 'E', 'C', 'S','CS','CW' )
AND (A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%')
AND B.FQTY >= 0
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND A.FMANUALCLOSE = '0'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
) ;
--CSCW
SELECT A.FBILLNO AS 'AFBILLNO',
'CDZ' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID,A.FID,B.FENTRYID ,'#XNChongDianZhuangHeTong' AS TableName
INTO #XNChongDianZhuangHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
LEFT JOIN
(
SELECT B.FNAME,
B.FSPECIFICATION,
A.*
FROM T_BD_MATERIAL A
JOIN T_BD_MATERIAL_L B
ON A.FMATERIALID = B.FMATERIALID
WHERE B.FLOCALEID = 2052
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) G --
ON G.FMATERIALID = B.FMATERIALID
WHERE
(D.FNUMBER IN ('CS','CW' ))
AND B.F_SPECIALOFFER = '1'
AND B.F_YKQC_CHECKBOX_QTR != '1'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND B.FQTY >= 0
AND A.FMANUALCLOSE = '0'
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
)
AND G.FNUMBER LIKE 'V%'
;
--CSCW
SELECT A.FBILLNO AS 'AFBILLNO',
A.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#PLChongDianZhuangHeTong' AS TableName
INTO #PLChongDianZhuangHeTong
FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
LEFT JOIN
(
SELECT B.FNAME,
B.FSPECIFICATION,
A.*
FROM T_BD_MATERIAL A
JOIN T_BD_MATERIAL_L B
ON A.FMATERIALID = B.FMATERIALID
WHERE B.FLOCALEID = 2052
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) G --
ON G.FMATERIALID = B.FMATERIALID
WHERE
(D.FNUMBER IN ('CS','CW' ))
--AND B.F_SPECIALOFFER = '1'
--AND B.F_YKQC_CHECKBOX_QTR != '1'
AND (A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%')
AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL'
AND B.FQTY >= 0
AND A.FMANUALCLOSE = '0'
AND A.FMANUALCLOSE <> '1'
AND B.FMANUALROWCLOSE <> '1'
AND A.F_CONTRACTNUMBER NOT LIKE 'Z%'
AND A.FID NOT IN
(
SELECT FID FROM #PaiChuGongSi
)
AND G.FNUMBER not LIKE 'V%'
;
--PCES<
/*dialect*/
SELECT *
INTO #TempTable3
FROM #YiBiaoHeTong
UNION ALL
SELECT *
FROM #XiTongHeTong
UNION ALL
SELECT *
FROM #XNChongDianZhuangHeTong
UNION ALL
SELECT *
FROM #PLChongDianZhuangHeTong
;
--SELECT DISTINCT TableName FROM #TempTable3
SELECT *
INTO #TempTable4
FROM #TempTable3
WHERE 1 = 1;
/*dialect*/
SELECT *,
ROW_NUMBER() OVER (ORDER BY FID desc ,FENTRYID DESC) AS FIDENTITYID
INTO #TMP55555
FROM
(
SELECT *,
1 Sort
FROM #TempTable4
--UNION ALL
--SELECT
--'',
--'',
--'合计:',
--null,
--'',
--'',
--'',
--'',
--'',
--SUM(t1.Quantity),--
--SUM(t1.TaxPrice),
--SUM(t1.AllAmount),
--'',
--'',
--'',
--'',
--'',
--'',
--SUM(t1.CurrentSettledUpset1),
--SUM(t1.CurrentSettledUpset2),
--SUM(t1.Difference),
--SUM(t1.TotalSpread),
--'',
--'',
--SUM(t1.OrderAllAmount),
--SUM(t1.NotShipmentsAmount),
--SUM(t1.ExpireUnpaidAmount),
--'',
--0 Sort
--FROM #TempTable4 t1
) t1
ORDER BY Sort DESC;
--@<EFBFBD> CS202412060026 (OK)S202501210022X(OK) S202502240044X(OK) CS202502100019(OK) \\\S202505260034X(OK)
--P202505060031 CS202504280041(OK)
--SELECT * FROM #TMP5CAD9BB84D8011F0AD6E90F6533
--WHERE ContractNumber='CS202504280041' AND FSALEORGID=100302
SELECT AAA.TableName, A.FBILLNO AS 'AFBILLNO',
AAA.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', --
E.FNAME AS 'Client', --
F.FNAME AS 'Currency', --
ISNULL(E.FDATAVALUE, '') AS 'CreditType', --
A.F_CONTRACTNUMBER AS 'ContractNumber', --
ISNULL(G.FSPECIFICATION, '') AS 'SizeModel', --
B.FQTY - ISNULL(B3.FRETNOTICEQTY, 0) AS 'Quantity', --
B2.FTAXPRICE AS 'TaxPrice', --
B2.FALLAMOUNT_LC - ISNULL(ABS(B3.FALLAMOUNT_LC), 0) AS 'AllAmount', --
ISNULL(H.FNAME, '') AS 'ProjectName', --
ISNULL(H2.FNAME, '') AS 'SalerName', --
ISNULL(H3.FNAME, '') AS 'SaleDeptName', --
ISNULL(H4.FNAME, '') AS 'Supervisor', --
H5.FDATAVALUE AS 'SpecialCauseType', --
A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因
CASE
WHEN AAA.F_ORDERTYPE = 'YB' THEN
B.F_SETTLEMENTP
ELSE
NULL
END AS 'CurrentSettledUpset1', --
CASE
WHEN AAA.F_ORDERTYPE = 'XT'
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
CAST(ISNULL(A.F_VRYF_AMOUNT_YRR, 0) AS FLOAT)
ELSE
NULL
END AS 'CurrentSettledUpset2', --
(B2.FTAXPRICE - B.F_SETTLEMENTP) AS 'Difference', ---
--PCES
CASE
WHEN
(
D.FNUMBER = 'P'
OR D.FNUMBER = 'C'
OR D.FNUMBER = 'E'
OR D.FNUMBER = 'S'
) THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY) --
--ESWSXDCY
WHEN (
D.FNUMBER = 'ES'
OR D.FNUMBER = 'W'
OR D.FNUMBER = 'SX'
OR D.FNUMBER = 'D'
OR D.FNUMBER = 'CY'
)
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
--CSCW
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID = 100303 THEN
((B2.FTAXPRICE - B.F_SETTLEMENTP) * B.FQTY)
WHEN (
D.FNUMBER = 'CS'
OR D.FNUMBER = 'CW'
)
AND A.FSALEORGID != 100303
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - CAST(ISNULL(A.F_YKQC_TEXT_QTR, 0) AS FLOAT)
ELSE
NULL
END AS 'TotalSpread', --
C2.FNAME + ',' + TRY_CAST(FLOOR(C2.F_DAY) AS NVARCHAR(MAX)) + '天,'
+ TRY_CAST(FLOOR(C2.FRECADVANCERATE) AS NVARCHAR(MAX)) + '%' AS 'PaymentMethods', --
CASE
WHEN A.F_ORDERTYPE = 'YB' THEN
'仪表合同' --
WHEN A.F_ORDERTYPE = 'XT' THEN --
(CASE
WHEN ISNULL(A.F_XMYSSJ, '') != '' THEN
CONVERT(NVARCHAR, A.F_XMYSSJ, 23)
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) <= 0 THEN
'发货完成'
WHEN C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) = C.FBILLALLAMOUNT_LC
- ISNULL(
ABS(B3.FBillAllAmount_LC),
0
) THEN
'未发货'
ELSE
'部分发货'
END
)
ELSE
''
END AS 'ProjectPhase', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0)
ELSE
NULL
END AS 'OrderAllAmount', --
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0)
ELSE
NULL
END AS 'NotShipmentsAmount', --
CASE
WHEN CONVERT(NVARCHAR(10), DATEADD(DAY, ISNULL(C2.F_DAY, 0), C2.F_PMSDATE), 23) > GETDATE()
AND C2.FRECADVANCEAMOUNT > C2.FRECAMOUNT
AND ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY B.FSEQ) = 1 THEN
C2.FRECADVANCEAMOUNT - C2.FRECAMOUNT
ELSE
NULL
END AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' --
,aaa.FSALEORGID
INTO #TMP5CAD9BB84D8011F0AD6E90F6533
FROM #TMP55555 AAA
INNER JOIN T_SAL_ORDERENTRY B ON AAA.FENTRYID=B.FENTRYID
INNER JOIN T_SAL_ORDER A --
ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
LEFT JOIN
(
SELECT Aq2.FBillAllAmount_LC,
Aq.*
FROM
(
SELECT W2.FSID,
W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSID,
W2.FSBILLID
) Aq
JOIN
(
SELECT W2.FSBILLID,
STRING_AGG(CONVERT(NVARCHAR, W1.FDATE, 23), ',') AS 'FDate',
SUM(W1.FPRICEUNITQTY) AS 'FRETNOTICEQTY',
SUM(W1.FALLAMOUNT_LC) AS 'FBillAllAmount_LC'
FROM
(
SELECT q1.FDATE,
q3.FSID,
q2.FALLAMOUNT_LC,
q2.FPRICEUNITQTY
FROM T_SAL_RETURNNOTICE q1
JOIN T_SAL_RETURNNOTICEENTRY_F q2
ON q1.FID = q2.FID
JOIN T_SAL_RETURNNOTICEENTRY_LK q3
ON q2.FENTRYID = q3.FENTRYID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
AND q3.FSTABLENAME = 'T_SAL_ORDERENTRY'
) W1
JOIN T_SAL_ORDERENTRY_LK W2
ON W1.FSID = W2.FENTRYID
GROUP BY W2.FSBILLID
) Aq2
ON Aq.FSBILLID = Aq2.FSBILLID
) B3 ---退
ON B.FENTRYID = B3.FSID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_SAL_ORDERPLAN q1
JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_RECCONDITION q1
LEFT JOIN T_BD_RECCONDITION_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) q2
ON q1.F_RECCONDITIONID = q2.FID
) C2 --_收款计划
ON A.FID = C2.FID
LEFT JOIN
(
SELECT FNUMBER,
FMASTERID
FROM T_BAS_ASSISTANTDATAENTRY
WHERE FID = '670cc977263353'
AND FDOCUMENTSTATUS = 'C'
AND FFORBIDSTATUS = 'A'
) D --#(辅助资料表)
ON A.F_ORDERCATEGORY = D.FMASTERID
LEFT JOIN
(
SELECT A2.FDATAVALUE,
A1.*
FROM
(
SELECT q2.FNAME,
q1.*
FROM T_BD_CUSTOMER q1
JOIN T_BD_CUSTOMER_L q2
ON q1.FCUSTID = q2.FCUSTID
) A1
LEFT JOIN
(
SELECT A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '673af6092e2877'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) A2
ON A1.F_CREDITCLASSIFICATION = A2.FMASTERID
) E --_L表
ON A.FCUSTID = E.FCUSTID
LEFT JOIN
(SELECT * FROM T_BD_CURRENCY_L WHERE FLOCALEID = 2052) F --
ON C.FSETTLECURRID = F.FCURRENCYID
LEFT JOIN
(
SELECT B.FNAME,
B.FSPECIFICATION,
A.*
FROM T_BD_MATERIAL A
JOIN T_BD_MATERIAL_L B
ON A.FMATERIALID = B.FMATERIALID
WHERE B.FLOCALEID = 2052
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) G --
ON G.FMATERIALID = B.FMATERIALID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BAS_PREBDONE q1
JOIN T_BAS_PREBDONE_L q2
ON q1.FID = q2.FID
WHERE q2.FLocaleID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H --1
ON H.FID = A.F_PROJECTNAME
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM V_BD_SALESMAN q1
LEFT JOIN V_BD_SALESMAN_L q2
ON q1.fid = q2.fid
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
AND q1.FFORBIDDENSTATUS = '0'
) H2 --
ON A.FSALERID = H2.fid
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_BD_DEPARTMENT q1
JOIN T_BD_DEPARTMENT_L q2
ON q1.FDEPTID = q2.FDEPTID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H3 --
ON A.FSALEDEPTID = H3.FDEPTID
LEFT JOIN
(
SELECT q2.FNAME,
q1.*
FROM T_HR_EMPINFO q1
JOIN T_HR_EMPINFO_L q2
ON q1.FID = q2.FID
WHERE q2.FLOCALEID = 2052
AND q1.FDOCUMENTSTATUS = 'C'
AND q1.FFORBIDSTATUS = 'A'
) H4 --#(员工表)
ON A.F_VRYF_BASE_FG2 = H4.FID
LEFT JOIN
(
SELECT A.FNUMBER,
A.FMASTERID,
B.FDATAVALUE
FROM T_BAS_ASSISTANTDATAENTRY A
JOIN T_BAS_ASSISTANTDATAENTRY_L B
ON A.FENTRYID = B.FENTRYID
WHERE A.FID = '674f073de0bc25'
AND A.FDOCUMENTSTATUS = 'C'
AND A.FFORBIDSTATUS = 'A'
) H5
ON H5.FMASTERID = A.FSPECIALRESON
LEFT JOIN
(
SELECT W2.FSID,
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM
(
SELECT q2.FALLAMOUNT_LC,
q2.FENTRYID
FROM T_SAL_DELIVERYNOTICE q1
JOIN T_SAL_DELIVERYNOTICEENTRY_F q2
ON q1.FID = q2.FID
WHERE q1.FDOCUMENTSTATUS = 'C'
AND q1.FCANCELSTATUS = 'A'
) W1
JOIN T_SAL_DELIVERYNOTICEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
GROUP BY W2.FSID
) H6 --
ON B.FENTRYID = H6.FSID
LEFT JOIN
(
SELECT W2.FSID,
W1.*
FROM
(
SELECT B.FALLAMOUNTFOR,
B.FENTRYID
FROM T_AR_RECEIVABLE A
JOIN T_AR_RECEIVABLEENTRY B
ON A.FID = B.FID
WHERE A.FDOCUMENTSTATUS = 'C'
AND B.FORDERNUMBER != ''
AND A.FENDDATE <= GETDATE()
) W1
JOIN T_AR_RECEIVABLEENTRY_LK W2
ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
) H7
ON B.FENTRYID = H7.FSID
SELECT * FROM #TMP5CAD9BB84D8011F0AD6E90F6533 aaa
WHERE AAA.ContractNumber='CS202504280041' AND AAA.FSALEORGID=100302
--DROP TABLE #PaiChuGongSi , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3, #TempTable4 ,#TMP5CAD9BB84D8011F0AD6E90F6533,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong,#TMP55555