This commit is contained in:
余宇波 2025-08-16 18:06:48 +08:00
parent 306d904865
commit 567b3c46c1
5 changed files with 274 additions and 124 deletions

View File

@ -771,11 +771,50 @@ UPDATE #tempDaBiao SET NotShipmentsAmount=NotShipmentsAmount-ISNULL(k3.含税
FROM dbo.oldk3seorder0701 k3 FROM dbo.oldk3seorder0701 k3
WHERE F_K3SEQ=k3. AND #tempDaBiao.ContractNumber=k3.; WHERE F_K3SEQ=k3. AND #tempDaBiao.ContractNumber=k3.;
UPDATE #tempDaBiao SET TotalSpread=TotalSpread+b.TotalSpreadYiBiao,CurrentSettledUpset2=CurrentSettledUpset2-b.TotalSpreadYiBiao SELECT DISTINCT a.fid,b.F_SettlementAmount,jiashui
FROM (SELECT SUM(a.CurrentSettledUpset1*a.Quantity) AS TotalSpreadYiBiao,a.AFBILLNO FROM #tempDaBiao a INTO #PLChongDianZhuangHeTong_yibiao
WHERE TableName='#XNChongDianZhuangHeTong' FROM #PLChongDianZhuangHeTong a
GROUP BY a.AFBILLNO) b INNER JOIN (SELECT a.FID, SUM(B.F_SettlementAmount) AS F_SettlementAmount,SUM(B2.FTAXPRICE*C.FExchangeRate*b.FQTY) AS jiashui
where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBILLNO ; FROM T_SAL_ORDERENTRY B --
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
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 G.FNUMBER LIKE 'V%'
GROUP BY a.fid
) b
ON a.fid=b.fid
UPDATE #tempDaBiao SET TotalSpread= TotalSpread-b.jiashui +b.F_SettlementAmount
,CurrentSettledUpset2=CurrentSettledUpset2-b.F_SettlementAmount
FROM (SELECT fid,F_SettlementAmount ,jiashui FROM #PLChongDianZhuangHeTong_yibiao ) b
where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.FID=b.FID;
DELETE #tempDaBiao
WHERE TableName IN ('#PLChongDianZhuangHeTong') AND FID NOT IN (
SELECT a.fid FROM #tempDaBiao b INNER JOIN dbo.T_SAL_ORDER a
ON a.FID=b.FID
WHERE
(A.F_SpecialContracts = '是' OR a.F_GROSSMARGIN1='<35%' OR b.TotalSpread < 0 ) and (a.F_CancelSpecialContracts !='是' or a.F_CancelSpecialContracts is null )
);
"; ";
@ -868,7 +907,7 @@ where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBIL
) t1 ) t1
order by Sort desc,Date desc ,fid desc ,FIDENTITYID ", tableName); order by Sort desc,Date desc ,fid desc ,FIDENTITYID ", tableName);
//Logger.Error("特价明细报表", sql, new Exception()); Logger.Error("特价明细报表", sql, new Exception());
DBUtils.Execute(this.Context, sql); DBUtils.Execute(this.Context, sql);
} }

View File

@ -0,0 +1,39 @@
SELECT F_AMOUNT,* FROM T_SAL_ORDER
WHERE FSALEORGID=100302 AND T_SAL_ORDER.FBILLNO='' AND F_AMOUNT !=0
SELECT F_AMOUNT,b.BenCiHeXiao, a.* FROM T_SAL_ORDER a
LEFT JOIN (SELECT SUM(BenCiHeXiao ) BenCiHeXiao,XiaoShouBillNo FROM dbo.ZZZ_HeXiaoBook
GROUP BY XiaoShouBillNo) b
on a.FBILLNO=b.XiaoShouBillNo
WHERE FSALEORGID=100302 AND F_AMOUNT <> b.BenCiHeXiao AND a.FBILLNO!=''
--BEGIN TRAN
--UPDATE T_SAL_ORDER SET F_AMOUNT=b.BenCiHeXiao
--FROM (SELECT SUM(BenCiHeXiao ) BenCiHeXiao,XiaoShouBillNo FROM dbo.ZZZ_HeXiaoBook
--GROUP BY XiaoShouBillNo) b
--WHERE T_SAL_ORDER.FBILLNO=b.XiaoShouBillNo AND FSALEORGID=100302 AND F_AMOUNT <> b.BenCiHeXiao AND T_SAL_ORDER.FBILLNO!=''
--UPDATE T_SAL_ORDER SET F_AMOUNT=0
--WHERE FSALEORGID=100302 AND T_SAL_ORDER.FBILLNO='' AND F_AMOUNT !=0
--COMMIT
--ROLLBACK
SELECT * FROM dbo.ZZZ_HeXiaoBook WHERE XiaoShouBillNo='SEORD133347'
ORDER BY ShouKuanBillNo
--BEGIN TRAN
--UPDATE T_AR_RECEIVEBILL SET F_AMOUNT=b.BenCiHeXiao
--FROM (SELECT SUM(BenCiHeXiao ) BenCiHeXiao,ShouKuanBillNo FROM dbo.ZZZ_HeXiaoBook
--GROUP BY ShouKuanBillNo) b
--WHERE T_AR_RECEIVEBILL.FBILLNO=b.ShouKuanBillNo AND FSALEORGID=100302 AND F_AMOUNT <> b.BenCiHeXiao AND T_AR_RECEIVEBILL.FBILLNO!=''
--UPDATE T_AR_RECEIVEBILL SET F_AMOUNT=0
--WHERE FSALEORGID=100302 AND T_AR_RECEIVEBILL.FBILLNO ='' AND F_AMOUNT !=0
----COMMIT

View File

@ -179,7 +179,7 @@ WHERE aa.FCreditStatus='A' AND aa.FRowAuditStatus='A' AND bb.FNUMBER=Cccc.FNUMBE
,0 [()],0 [()] ,0 [()],0 [()]
,ISNULL(a.F_expenses,0) [] ,ISNULL(a.F_expenses,0) []
,ISNULL(a.F_expenses,0) [] ,ISNULL(a.F_expenses,0) []
,ISNULL(ISNULL(N.F_res,O.FNAME),L.FNAME) [],w.[],0 [],0 [] ,ISNULL(ISNULL(N.F_res,O.FNAME),(CASE WHEN a.F_responsible='' THEN L.FNAME ELSE a.F_responsible END )) [],w.[],0 [],0 []
,uuu.FNAME AS [] ,uuu.FNAME AS []
-----------------from -------- -----------------from --------
@ -276,7 +276,8 @@ GROUP BY F_PaperNumber, FSALEORGID
--ON ACO2.=a.F_responsible AND ISNULL(ACO2.,'') != '' --ON ACO2.=a.F_responsible AND ISNULL(ACO2.,'') != ''
--UPDATE [ZRP_YingShouMingXi_yuyubo] SET []= [] --UPDATE [ZRP_YingShouMingXi_yuyubo] SET []= []
--WHERE ISNULL([],'')='' OR [] LIKE ' %';
---K3整单字段 ---K3整单字段
UPDATE T1 SET [K3整单累计发货金额()] = T2.[],[K3整单累计退货金额()] = T2.[退] UPDATE T1 SET [K3整单累计发货金额()] = T2.[],[K3整单累计退货金额()] = T2.[退]

View File

@ -9,11 +9,12 @@ END
GO GO
-- 创建新的存储过程 -- 创建新的存储过程
CREATE PROCEDURE dbo.PR_YingShouSBU_yuyubo @BeginDATE DATETIME='2024-01-01' CREATE PROCEDURE dbo.PR_YingShouSBU_yuyubo @BeginDATE DATETIME='2000-01-01'
AS AS
BEGIN BEGIN
DELETE [ZZZ_HeXiaoBook] WHERE [ShouKuanFDate]>=@BeginDATE OR ShouKuanType>0 DELETE [ZZZ_HeXiaoBook] WHERE [ShouKuanFDate]>=@BeginDATE
OR ShouKuanType>0
DECLARE @FDATE DATETIME,@FBILLNO NVARCHAR(200),@ShouKuanFID INT,@FSALEORGID INT ,@F_contractnumber NVARCHAR(2000),@fid2 INT,@fid3 INT,@amount DECIMAL(18,2),@hexiao DECIMAL(18,2) DECLARE @FDATE DATETIME,@FBILLNO NVARCHAR(200),@ShouKuanFID INT,@FSALEORGID INT ,@F_contractnumber NVARCHAR(2000),@fid2 INT,@fid3 INT,@amount DECIMAL(18,2),@hexiao DECIMAL(18,2)
,@remark NVARCHAR(200); ,@remark NVARCHAR(200);
@ -162,40 +163,57 @@ ORDER BY FDATE
-------------------- --------------------
SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0; SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0;
SELECT @fid2=FID FROM dbo.VRYF_t_Cust_Entry100025 WHERE FBILLNO3=@FBILLNO
DECLARE cursor_name44 CURSOR FOR
SELECT @FDATE=ISNULL(F_YeWuDate,FCREATEDATE),@fid3=FID FROM VRYF_t_Cust100015 SELECT FID FROM dbo.VRYF_t_Cust_Entry100025 WHERE FBILLNO3=@FBILLNO
WHERE FID=@fid2 AND FDOCUMENTSTATUS='C'
IF(@fid3>0) OPEN cursor_name44;
BEGIN FETCH NEXT FROM cursor_name44
SELECT @F_contractnumber=FCONTRACTNUMBER,@amount=FALLAMOUNT22 FROM VRYF_t_Cust_Entry100024 a WHERE a.FID=@fid2 INTO @fid2
SELECT @hexiao=@amount; WHILE @@FETCH_STATUS = 0
INSERT INTO [dbo].[ZZZ_HeXiaoBook] BEGIN
([XiaoShouFid] SELECT @fid3=0;
,[XiaoShouBillNo] SELECT @FDATE=ISNULL(F_YeWuDate,FCREATEDATE),@fid3=FID FROM VRYF_t_Cust100015
,[XiaoShouHeTong] WHERE FID=@fid2 AND FDOCUMENTSTATUS='C'
,[ShouKuanFid] IF(@fid3>0)
,[ShouKuanBillNo] BEGIN
,[ShouKuanFDate] SELECT @F_contractnumber=FCONTRACTNUMBER,@amount=FALLAMOUNT22 FROM VRYF_t_Cust_Entry100024 a WHERE a.FID=@fid2
,[BenCiHeXiao] SELECT @hexiao=@amount;
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType],Remark) INSERT INTO [dbo].[ZZZ_HeXiaoBook]
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,@amount,@FSALEORGID,'发货通知单的核销记录单',@fid2, dd.FExchangeRate,FSettleCurrId,FLOCALCURRID,0 ([XiaoShouFid]
,@remark FROM T_SAL_ORDER a ,[XiaoShouBillNo]
LEFT JOIN T_SAL_ORDERFIN dd ON a.FID=dd.FID ,[XiaoShouHeTong]
WHERE a.FSALEORGID=[FSaleOrgId] and a.F_CONTRACTNUMBER=@F_contractnumber) ,[ShouKuanFid]
END ,[ShouKuanBillNo]
,[ShouKuanFDate]
,[BenCiHeXiao]
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType],Remark)
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,@amount,@FSALEORGID,'发货通知单的核销记录单',@fid2, dd.FExchangeRate,FSettleCurrId,FLOCALCURRID,0
,@remark FROM T_SAL_ORDER a
LEFT JOIN T_SAL_ORDERFIN dd ON a.FID=dd.FID
WHERE a.FSALEORGID=[FSaleOrgId] and a.F_CONTRACTNUMBER=@F_contractnumber)
END
FETCH NEXT FROM cursor_name44
INTO @fid2;
END;
-- 4. 关闭游标
CLOSE cursor_name44;
-- 5. 释放游标资源
DEALLOCATE cursor_name44;
-------------- --------------
SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0; SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0;
SELECT FVERIFYDATE,FBILLFORMID, FVERIFYSEQ,FSOURCETYPE,FCURWRITTENOFFAMOUNTFOR,FCURWRITTENOFFAMOUNT,FSRCBILLNO,b.FEXCHANGERATE,FCURTAXMATCHAMOUNT,FCURNOTAXMATCHAMOUNT SELECT FVERIFYDATE,FBILLFORMID, FVERIFYSEQ,FSOURCETYPE,FCURWRITTENOFFAMOUNTFOR,FCURWRITTENOFFAMOUNT,FSRCBILLNO,b.FEXCHANGERATE,FCURTAXMATCHAMOUNT,FCURNOTAXMATCHAMOUNT
,FSRCBILLID ,b.FCURRENCYID,b.FLOCALCURRID ,FSRCBILLID ,b.FCURRENCYID,b.FLOCALCURRID
INTO #temp2 INTO #temp2
FROM T_AR_RECMacthLog a FROM T_AR_RECMacthLog a
LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID
LEFT JOIN T_BAS_BILLTYPE c ON b.FSOURCETYPE=c.FBILLTYPEID LEFT JOIN T_BAS_BILLTYPE c ON b.FSOURCETYPE=c.FBILLTYPEID
LEFT JOIN t_AR_RECEIVEBILL d ON d.FBILLNO=b.FSRCBILLNO LEFT JOIN t_AR_RECEIVEBILL d ON d.FBILLNO=b.FSRCBILLNO
WHERE FVERIFYSEQ IN (SELECT FVERIFYSEQ FROM T_AR_RECMacthLog a WHERE FVERIFYSEQ IN (SELECT FVERIFYSEQ FROM T_AR_RECMacthLog a
LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID WHERE b.FSRCBILLNO=@FBILLNO AND b.FSOURCETYPE='36cf265bd8c3452194ed9c83ec5e73d2') LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID
WHERE b.FSRCBILLNO=@FBILLNO AND b.FSOURCETYPE='36cf265bd8c3452194ed9c83ec5e73d2' AND FVERIFYDATE>=@BeginDATE
)
--SELECT * FROM #temp2 --SELECT * FROM #temp2
--SELECT @amount= SUM(FCURWRITTENOFFAMOUNT) FROM #temp2 WHERE FBILLFORMID !='AR_RECEIVEBILL' --SELECT @amount= SUM(FCURWRITTENOFFAMOUNT) FROM #temp2 WHERE FBILLFORMID !='AR_RECEIVEBILL'
SELECT @fid2=FSRCBILLID,@fid3=FVERIFYSEQ FROM #temp2 WHERE FBILLFORMID ='AR_receivable' SELECT @fid2=FSRCBILLID,@fid3=FVERIFYSEQ FROM #temp2 WHERE FBILLFORMID ='AR_receivable'
@ -236,8 +254,7 @@ LEFT JOIN dbo.T_AR_RECMACTHLOGENTRY b ON a.FID=b.FID WHERE b.FSRCBILLNO=@FBILLN
LEFT JOIN LEFT JOIN
(SELECT c.FSALEORGID,ak.FORDERNUMBER ,c.FID,SUM(ak.FALLAMOUNTFOR)/(SELECT SUM(FALLAMOUNTFOR) FROM T_AR_RECEIVABLEENTRY akk (SELECT c.FSALEORGID,ak.FORDERNUMBER ,c.FID,SUM(ak.FALLAMOUNTFOR)/(SELECT SUM(FALLAMOUNTFOR) FROM T_AR_RECEIVABLEENTRY akk
where akk.FID=ak.FID) where akk.FID=ak.FID)
FALLAMOUNTFOR_D FALLAMOUNTFOR_D
FROM T_AR_receivable c FROM T_AR_receivable c
LEFT JOIN T_AR_RECEIVABLEENTRY ak ON c.FID=ak.FID LEFT JOIN T_AR_RECEIVABLEENTRY ak ON c.FID=ak.FID
GROUP BY c.FSALEORGID,ak.FORDERNUMBER ,c.FID,ak.FID GROUP BY c.FSALEORGID,ak.FORDERNUMBER ,c.FID,ak.FID
@ -415,11 +432,26 @@ ORDER BY a.FVERIFYSEQ;
) )
DROP TABLE #temp222 DROP TABLE #temp222
UPDATE [ZZZ_HeXiaoBook] SET ZhangLing= ISNULL( ROUND( DATEDIFF(DAY,[],[ZZZ_HeXiaoBook].ShouKuanFDate) / 30,0) ,0 ) INSERT INTO [dbo].[ZZZ_HeXiaoBook]
FROM (SELECT a.XiaoShouFid,a.XiaoShouBillNo,[XiaoShouHeTong],a.ShouKuanFDate,b.,b. FROM [ZZZ_HeXiaoBook] a ([XiaoShouFid]
LEFT JOIN (SELECT b.ID,MAX(b.) AS ,max (b.) AS FROM [ZRP_YingShouMingXi_yuyubo] b GROUP BY ID) b ,[XiaoShouBillNo]
ON a.XiaoShouFid=b.ID) b ,[XiaoShouHeTong]
WHERE [ZZZ_HeXiaoBook].XiaoShouFid=b.XiaoShouFid ,[ShouKuanFid]
,[ShouKuanBillNo]
,[ShouKuanFDate]
,[BenCiHeXiao]
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType],Remark)
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,0,'',c.F_Date,F_shareAmount,a.FSALEORGID,'历史核销记录单没有收款单',c.FEntryID ,dd.FEXCHANGERATE,FSettleCurrId,FLOCALCURRID,2 ,c.F_NOTES
FROM T_SAL_ORDER a
INNER JOIN VRYF_t_Cust_Entry100021 c ON a.F_CONTRACTNUMBER=c.F_ORDERNO
LEFT JOIN T_SAL_ORDERFIN dd ON a.FID=dd.FID
WHERE (a.FSALEORGID=100302 OR a.fid IS NULL ) AND c.F_Receiptnumber='' AND c.F_ORDERNO NOT LIKE '%待%' )
UPDATE [ZZZ_HeXiaoBook] SET ZhangLing= ISNULL( ROUND( DATEDIFF(DAY,[],[ZZZ_HeXiaoBook].ShouKuanFDate) / 30,0) ,0 )
FROM (SELECT a.XiaoShouFid,a.XiaoShouBillNo,[XiaoShouHeTong],a.ShouKuanFDate,b.,b. FROM [ZZZ_HeXiaoBook] a
LEFT JOIN (SELECT b.ID,MAX(b.) AS ,max (b.) AS FROM [ZRP_YingShouMingXi_yuyubo] b GROUP BY ID) b
ON a.XiaoShouFid=b.ID) b
WHERE [ZZZ_HeXiaoBook].XiaoShouFid=b.XiaoShouFid

View File

@ -1,4 +1,5 @@
SELECT A.FID AS FID /*dialect*/
SELECT A.FID AS FID
INTO #PaiChuGongSi INTO #PaiChuGongSi
FROM T_SAL_ORDER A FROM T_SAL_ORDER A
INNER JOIN T_BD_CUSTOMER_L C INNER JOIN T_BD_CUSTOMER_L C
@ -25,8 +26,8 @@ WHERE A.FSALEORGID = 100302
/*dialect*/ /*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO', SELECT A.FBILLNO AS 'AFBILLNO',
'YB' F_ORDERTYPE, 'YB' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', -- CONVERT(NVARCHAR, A.FApproveDate, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', -- MONTH(A.FApproveDate) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', -- A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#YiBiaoHeTong' AS TableName a.FSALEORGID ,A.FID,B.FENTRYID ,'#YiBiaoHeTong' AS TableName
INTO #YiBiaoHeTong INTO #YiBiaoHeTong
@ -61,11 +62,14 @@ WHERE
AND A.FID NOT IN AND A.FID NOT IN
( (
SELECT FID FROM #PaiChuGongSi SELECT FID FROM #PaiChuGongSi
) AND 1=1 ; /*dialect*/ ) AND 1=1 AND a.F_CONTRACTNUMBER like '%CS202506250063%' ;
/*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO', SELECT A.FBILLNO AS 'AFBILLNO',
'XT' F_ORDERTYPE, 'XT' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', -- CONVERT(NVARCHAR, A.FApproveDate, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', -- MONTH(A.FApproveDate) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', -- A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#XiTongHeTong' AS TableName a.FSALEORGID ,A.FID,B.FENTRYID ,'#XiTongHeTong' AS TableName
INTO #XiTongHeTong INTO #XiTongHeTong
@ -101,11 +105,14 @@ WHERE D.FNUMBER NOT IN ( 'P', 'E', 'C', 'S','CS','CW','B' )
AND A.FID NOT IN AND A.FID NOT IN
( (
SELECT FID FROM #PaiChuGongSi SELECT FID FROM #PaiChuGongSi
) AND 1=1 ; /*dialect*/ ) AND 1=1 AND a.F_CONTRACTNUMBER like '%CS202506250063%';
/*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO', SELECT A.FBILLNO AS 'AFBILLNO',
'CDZ' F_ORDERTYPE, 'CDZ' F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', -- CONVERT(NVARCHAR, A.FApproveDate, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', -- MONTH(A.FApproveDate) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', -- A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID,A.FID,B.FENTRYID ,'#XNChongDianZhuangHeTong' AS TableName a.FSALEORGID,A.FID,B.FENTRYID ,'#XNChongDianZhuangHeTong' AS TableName
INTO #XNChongDianZhuangHeTong INTO #XNChongDianZhuangHeTong
@ -113,7 +120,7 @@ FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A -- JOIN T_SAL_ORDER A --
ON A.FID = B.FID ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表 LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID ON B.FENTRYID = B2.FENTRYID
LEFT JOIN LEFT JOIN
( (
SELECT FNUMBER, SELECT FNUMBER,
@ -153,22 +160,24 @@ WHERE
( (
SELECT FID FROM #PaiChuGongSi SELECT FID FROM #PaiChuGongSi
) )
AND G.FNUMBER LIKE 'V%' AND 1=1 ; AND G.FNUMBER LIKE 'V%' AND 1=1 AND a.F_CONTRACTNUMBER like '%CS202506250063%' ;
/*dialect*/ /*dialect*/
SELECT A.FBILLNO AS 'AFBILLNO', SELECT A.FBILLNO AS 'AFBILLNO',
A.F_ORDERTYPE, A.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', -- CONVERT(NVARCHAR, A.FApproveDate, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', -- MONTH(A.FApproveDate) AS 'Month', --
A.F_CONTRACTNUMBER AS 'ContractNumber', -- A.F_CONTRACTNUMBER AS 'ContractNumber', --
a.FSALEORGID ,A.FID,B.FENTRYID ,'#PLChongDianZhuangHeTong' AS TableName a.FSALEORGID ,A.FID,B.FENTRYID ,'#PLChongDianZhuangHeTong' AS TableName
INTO #PLChongDianZhuangHeTong INTO #PLChongDianZhuangHeTong
FROM T_SAL_ORDERENTRY B -- FROM T_SAL_ORDERENTRY B --
JOIN T_SAL_ORDER A -- JOIN T_SAL_ORDER A --
ON A.FID = B.FID ON A.FID = B.FID
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表 LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID ON B.FENTRYID = B2.FENTRYID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
LEFT JOIN LEFT JOIN
( (
SELECT FNUMBER, SELECT FNUMBER,
@ -198,7 +207,8 @@ WHERE
(D.FNUMBER IN ('CS','CW' )) (D.FNUMBER IN ('CS','CW' ))
--AND B.F_SPECIALOFFER = '1' --AND B.F_SPECIALOFFER = '1'
--AND B.F_YKQC_CHECKBOX_QTR != '1' --AND B.F_YKQC_CHECKBOX_QTR != '1'
AND (A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%') and (a.F_CancelSpecialContracts !='' or a.F_CancelSpecialContracts is null ) AND (A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%' OR a.F_VRYF_Amount_yrr > c.FBillAllAmount) and (a.F_CancelSpecialContracts !='' or a.F_CancelSpecialContracts is null )
AND A.FDOCUMENTSTATUS = 'C' AND A.FDOCUMENTSTATUS = 'C'
AND A.FBUSINESSTYPE = 'NORMAL' AND A.FBUSINESSTYPE = 'NORMAL'
@ -211,7 +221,10 @@ WHERE
( (
SELECT FID FROM #PaiChuGongSi SELECT FID FROM #PaiChuGongSi
) )
AND G.FNUMBER not LIKE 'V%' AND 1=1 ; /*dialect*/ AND G.FNUMBER not LIKE 'V%' AND 1=1 AND a.F_CONTRACTNUMBER like '%CS202506250063%';
--, 0.00 F_VRYF_Amount_yrr,c.FBillAllAmount
/*dialect*/ /*dialect*/
SELECT * SELECT *
INTO #TempTable3 INTO #TempTable3
@ -226,11 +239,12 @@ UNION ALL
SELECT * SELECT *
FROM #PLChongDianZhuangHeTong ; FROM #PLChongDianZhuangHeTong ;
/*dialect*/ /*dialect*/
SELECT AAA.TableName, A.FBILLNO AS 'AFBILLNO', SELECT AAA.TableName, A.FBILLNO AS 'AFBILLNO',
AAA.F_ORDERTYPE, AAA.F_ORDERTYPE,
CONVERT(NVARCHAR, A.FDATE, 23) AS 'Date', -- CONVERT(NVARCHAR, A.FApproveDate, 23) AS 'Date', --
MONTH(A.FDATE) AS 'Month', -- MONTH(A.FApproveDate) AS 'Month', --
E.FNAME AS 'Client', -- E.FNAME AS 'Client', --
F.FNAME AS 'Currency', -- F.FNAME AS 'Currency', --
ISNULL(E.FDATAVALUE, '') AS 'CreditType', -- ISNULL(E.FDATAVALUE, '') AS 'CreditType', --
@ -245,6 +259,22 @@ FROM #PLChongDianZhuangHeTong ;
ISNULL(H4.FNAME, '') AS 'Supervisor', -- ISNULL(H4.FNAME, '') AS 'Supervisor', --
H5.FDATAVALUE AS 'SpecialCauseType', -- H5.FDATAVALUE AS 'SpecialCauseType', --
A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因 A.FCRMSPECIALPRICINGREASON AS 'CRMSpecialCause', --CRM特价原因
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN
B.F_SETTLEMENTP*B.FQTY
ELSE
NULL
END AS 'CurrentSettledUpsetJinE', --*
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.FID ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT)
ELSE
NULL
END AS 'F_VRYF_Amount_yrr', -- 整单结算总价#
CASE CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN
B.F_SETTLEMENTP B.F_SETTLEMENTP
@ -252,22 +282,6 @@ FROM #PLChongDianZhuangHeTong ;
NULL NULL
END AS 'CurrentSettledUpset1', -- END AS 'CurrentSettledUpset1', --
CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN
B.F_SETTLEMENTP*B.FQTY
ELSE
NULL
END AS 'CurrentSettledUpsetJinE', --*
CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT)
ELSE
NULL
END AS 'F_VRYF_Amount_yrr', -- 整单结算总价#
CASE CASE
WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong'))
AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
@ -276,15 +290,16 @@ FROM #PLChongDianZhuangHeTong ;
NULL NULL
END AS 'CurrentSettledUpset2', -- END AS 'CurrentSettledUpset2', --
CASE CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP) WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE*C.FExchangeRate - B.F_SETTLEMENTP)
ELSE NULL END AS 'Difference', --- ELSE NULL END AS 'Difference', ---
CASE CASE
WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE - B.F_SETTLEMENTP)*B.FQTY WHEN (AAA.TableName IN ( '#YiBiaoHeTong','#XNChongDianZhuangHeTong')) THEN (B2.FTAXPRICE*C.FExchangeRate - B.F_SETTLEMENTP)*B.FQTY
ELSE NULL END AS 'TotalSpreadYiBiao', -- ELSE NULL END AS 'TotalSpreadYiBiao', --
CASE CASE
WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong')) WHEN (AAA.TableName IN ('#XiTongHeTong','#PLChongDianZhuangHeTong'))
AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN AND ROW_NUMBER() OVER (PARTITION BY A.FID,AAA.TableName ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
C.FBillAllAmount_LC - CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT) C.FBillAllAmount_LC - CAST(ISNULL(A.F_VRYF_Amount_yrr, 0) AS FLOAT)
ELSE ELSE
NULL NULL
END AS 'TotalSpread', -- END AS 'TotalSpread', --
@ -312,27 +327,27 @@ FROM #PLChongDianZhuangHeTong ;
'' ''
END AS 'ProjectPhase', -- END AS 'ProjectPhase', --
CASE CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY A.fid desc ,B.FENTRYID) = 1 THEN WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0)
ELSE ELSE
NULL NULL
END AS 'OrderAllAmount', -- END AS 'OrderAllAmount', --
CASE CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY A.fid desc ,B.FENTRYID) = 1 THEN WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0) C.FBILLALLAMOUNT_LC - ISNULL(ABS(B3.FBillAllAmount_LC), 0) - ISNULL(H6.FALLAMOUNT_LC, 0)
ELSE ELSE
NULL NULL
END AS 'NotShipmentsAmount', -- END AS 'NotShipmentsAmount', --
CASE CASE
WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY A.fid desc ,B.FENTRYID) = 1 THEN WHEN ROW_NUMBER() OVER (PARTITION BY A.F_CONTRACTNUMBER ORDER BY a.FID,AAA.TableName,b.FENTRYID) = 1 THEN
(SELECT SUM([bbb].[]*BBB.) FROM dbo.ZRP_YingShouMingXi_yuyubo bbb WHERE a.FID=bbb.ID ) (SELECT SUM([bbb].[]*BBB.) FROM dbo.ZRP_YingShouMingXi_yuyubo bbb WHERE a.FID=bbb.ID )
ELSE ELSE
NULL NULL
END END
AS 'ExpireUnpaidAmount', -- AS 'ExpireUnpaidAmount', --
G.FNUMBER AS 'ProductsCode' -- G.FNUMBER AS 'ProductsCode' --
,aaa.FSALEORGID,AAA.FENTRYID,aaa.FID,b.F_K3SEQ ,aaa.FSALEORGID,AAA.FENTRYID,aaa.FID,B.F_K3SEQ
INTO #tempDaBiao INTO #tempDaBiao
FROM #TempTable3 AAA FROM #TempTable3 AAA
INNER JOIN T_SAL_ORDERENTRY B ON AAA.FENTRYID=B.FENTRYID INNER JOIN T_SAL_ORDERENTRY B ON AAA.FENTRYID=B.FENTRYID
@ -535,7 +550,7 @@ FROM #PLChongDianZhuangHeTong ;
) H5 ) H5
ON H5.FMASTERID = A.FSPECIALRESON ON H5.FMASTERID = A.FSPECIALRESON
LEFT JOIN LEFT JOIN
( (
SELECT W2.FSBILLID, SELECT W2.FSBILLID,
SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC' SUM(W1.FALLAMOUNT_LC) AS 'FALLAMOUNT_LC'
FROM FROM
@ -573,26 +588,69 @@ FROM #PLChongDianZhuangHeTong ;
ON W1.FENTRYID = W2.FENTRYID ON W1.FENTRYID = W2.FENTRYID
WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY' WHERE W2.FSTABLENAME = 'T_SAL_ORDERENTRY'
) H7 ) H7
ON B.FENTRYID = H7.FSID AND 1=1 ; ON B.FENTRYID = H7.FSID AND 1=1 AND a.F_CONTRACTNUMBER like '%CS202506250063%' ;
UPDATE #tempDaBiao SET NotShipmentsAmount=NotShipmentsAmount-ISNULL(k3.含税单价*(K3.销售出库数量+K3.其他出库数量)*1.000,0) UPDATE #tempDaBiao SET NotShipmentsAmount=NotShipmentsAmount-ISNULL(k3.含税单价*(isnull(K3.销售出库数量,0)+isnull(K3.其他出库数量,0))*1.000,0)
FROM dbo.oldk3seorder0701 k3 FROM dbo.oldk3seorder0701 k3
WHERE F_K3SEQ=k3. AND #tempDaBiao.ContractNumber=k3.合同号 WHERE F_K3SEQ=k3. AND #tempDaBiao.ContractNumber=k3.合同号;
UPDATE #tempDaBiao SET TotalSpread=TotalSpread-b.TotalSpreadYiBiao,CurrentSettledUpset2=CurrentSettledUpset2-b.TotalSpreadYiBiao SELECT DISTINCT a.fid,b.F_SettlementAmount,jiashui
FROM (SELECT SUM(a.CurrentSettledUpset1*a.Quantity) AS TotalSpreadYiBiao,a.AFBILLNO FROM #tempDaBiao a INTO #PLChongDianZhuangHeTong_yibiao
WHERE TableName='#XNChongDianZhuangHeTong' FROM #PLChongDianZhuangHeTong a
GROUP BY a.AFBILLNO) b INNER JOIN (SELECT a.FID, SUM(B.F_SettlementAmount) AS F_SettlementAmount,SUM(B2.FTAXPRICE*C.FExchangeRate*b.FQTY) AS jiashui
where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBILLNO FROM T_SAL_ORDERENTRY B --
LEFT JOIN T_SAL_ORDERENTRY_F B2 --_F表
ON B.FENTRYID = B2.FENTRYID
JOIN T_SAL_ORDER A --
ON A.FID = B.FID
JOIN T_SAL_ORDERFIN C --_财务表
ON A.FID = C.FID
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 G.FNUMBER LIKE 'V%'
GROUP BY a.fid
) b
ON a.fid=b.fid
/*dialect*/
UPDATE #tempDaBiao SET TotalSpread= TotalSpread-b.jiashui +b.F_SettlementAmount
,CurrentSettledUpset2=CurrentSettledUpset2-b.F_SettlementAmount
FROM (SELECT fid,F_SettlementAmount ,jiashui FROM #PLChongDianZhuangHeTong_yibiao ) b
where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.FID=b.FID;
DELETE #tempDaBiao
WHERE TableName IN ('#PLChongDianZhuangHeTong') AND FID NOT IN (
SELECT a.fid FROM #tempDaBiao b INNER JOIN dbo.T_SAL_ORDER a
ON a.FID=b.FID
WHERE
(A.F_SpecialContracts = '' OR a.F_GROSSMARGIN1='<35%' OR b.TotalSpread < 0 ) and (a.F_CancelSpecialContracts !='' or a.F_CancelSpecialContracts is null ))
/*dialect*/
Select Select
*, *,
ROW_NUMBER() OVER (ORDER BY FID DESC,FENTRYID) AS FIDENTITYID ROW_NUMBER() OVER (ORDER BY Date desc,FID DESC ,[TableName],FENTRYID) AS FIDENTITYID
INTO TMP7848633B76A911F0AD799B10B28 --INTO TMP509D9B1A79CF11F0AD799B10B28
From From
(SELECT [TableName] (SELECT [TableName]
,[AFBILLNO] ,[AFBILLNO]
@ -614,7 +672,7 @@ where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBIL
,[SpecialCauseType] ,[SpecialCauseType]
,[CRMSpecialCause] ,[CRMSpecialCause]
,[CurrentSettledUpset1] ,[CurrentSettledUpset1]
,CurrentSettledUpsetJinE ,CurrentSettledUpsetJinE
,F_VRYF_Amount_yrr ,F_VRYF_Amount_yrr
,[CurrentSettledUpset2] ,[CurrentSettledUpset2]
,[Difference] ,[Difference]
@ -651,8 +709,8 @@ where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBIL
'', '',
'', '',
SUM(t1.CurrentSettledUpset1), SUM(t1.CurrentSettledUpset1),
SUM(CurrentSettledUpsetJinE) SUM(CurrentSettledUpsetJinE)
,SUM(F_VRYF_Amount_yrr), ,SUM(F_VRYF_Amount_yrr),
SUM(t1.CurrentSettledUpset2), SUM(t1.CurrentSettledUpset2),
SUM(t1.Difference), SUM(t1.Difference),
SUM(t1.TotalSpreadYiBiao), SUM(t1.TotalSpreadYiBiao),
@ -668,25 +726,6 @@ where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBIL
where Quantity<>0 where Quantity<>0
) t1 ) t1
order by Sort desc,fid desc ,FIDENTITYID order by Sort desc,Date desc ,fid desc ,FIDENTITYID
SELECT fid,AllAmount,TaxPrice,CurrentSettledUpset1,CurrentSettledUpset1*aaa.Quantity,CurrentSettledUpset1,CurrentSettledUpset2,[Difference],TotalSpread,TotalSpreadYiBiao, * FROM #tempDaBiao aaa --DROP TABLE #PaiChuGongSi , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3 ,#PLChongDianZhuangHeTong_yibiao,#tempDaBiao,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong,TMP509D9B1A79CF11F0AD799B10B28
--WHERE TableName IN ('#PLChongDianZhuangHeTong','XNChongDianZhuangHeTong')
WHERE AAA.ContractNumber ='C202506250025'
AND aaa.Date>='2025-01-01'
--AND AAA.FSALEORGID=100302
--WHERE aaa.fid=208563
ORDER BY aaa.FID,FENTRYID
--UPDATE #tempDaBiao SET TotalSpread=TotalSpread-b.TotalSpreadYiBiao
--FROM (SELECT SUM(a.TotalSpreadYiBiao) AS TotalSpreadYiBiao,a.AFBILLNO FROM #tempDaBiao a
--WHERE TableName='#XNChongDianZhuangHeTong' AND a.ContractNumber='CS202506160050'
--GROUP BY a.AFBILLNO) b
--where TableName IN ('#PLChongDianZhuangHeTong') AND #tempDaBiao.AFBILLNO=B.AFBILLNO
--DROP TABLE #PaiChuGongSi , #YiBiaoHeTong , #XiTongHeTong ,#TempTable3 ,#tempDaBiao,#XNChongDianZhuangHeTong,#PLChongDianZhuangHeTong,TMP7848633B76A911F0AD799B10B28