666
This commit is contained in:
180
非C#代码文件/收款单核销流水存储过程.sql
Normal file
180
非C#代码文件/收款单核销流水存储过程.sql
Normal file
@@ -0,0 +1,180 @@
|
||||
|
||||
|
||||
-- <20><><EFBFBD><EFBFBD><EFBFBD>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE> P202502080013
|
||||
IF OBJECT_ID('dbo.[PR_YingShouSBU_yuyubo]', 'P') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE dbo.PR_YingShouSBU_yuyubo;
|
||||
PRINT '<EFBFBD>洢<EFBFBD><EFBFBD><EFBFBD><EFBFBD> dbo.[PR_YingShouSBU_yuyubo] <20><>ɾ<EFBFBD><C9BE>';
|
||||
END
|
||||
GO
|
||||
|
||||
-- <20><><EFBFBD><EFBFBD><EFBFBD>µĴ洢<C4B4><E6B4A2><EFBFBD><EFBFBD>
|
||||
CREATE PROCEDURE dbo.PR_YingShouSBU_yuyubo @BeginDATE DATETIME='2025-01-01'
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DELETE [ZZZ_HeXiaoBook] WHERE [ShouKuanFDate]>=@BeginDATE
|
||||
|
||||
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);
|
||||
-- 1. <20><><EFBFBD><EFBFBD><EFBFBD>α<EFBFBD>
|
||||
DECLARE cursor_name2 CURSOR FOR
|
||||
SELECT FDATE,FBILLNO,FID,FSALEORGID,F_contractnumber FROM T_AR_RECEIVEBILL
|
||||
WHERE FDOCUMENTSTATUS='C' AND FDATE>=@BeginDATE
|
||||
ORDER BY FDATE
|
||||
|
||||
OPEN cursor_name2;
|
||||
FETCH NEXT FROM cursor_name2
|
||||
INTO @FDATE,
|
||||
@FBILLNO,
|
||||
@ShouKuanFID,
|
||||
@FSALEORGID,
|
||||
@F_contractnumber
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
SELECT @hexiao=0;
|
||||
---<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>--
|
||||
SELECT @fid2=0,@fid3=0;
|
||||
SELECT @fid2=FID FROM dbo.T_AutoWrireRecordEntry2 WHERE FBILLNO3=@FBILLNO
|
||||
IF(@fid2>0)
|
||||
begin
|
||||
SELECT @FDATE=ISNULL(F_YeWuDate,FCREATEDATE),@fid3=FID FROM T_AutoWrireRecord
|
||||
WHERE FID=@fid2 AND FDOCUMENTSTATUS='C'
|
||||
IF(@fid3>0)
|
||||
BEGIN
|
||||
SELECT @hexiao=1;
|
||||
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
||||
([XiaoShouFid]
|
||||
,[XiaoShouBillNo]
|
||||
,[XiaoShouHeTong]
|
||||
,[ShouKuanFid]
|
||||
,[ShouKuanBillNo]
|
||||
,[ShouKuanFDate]
|
||||
,[BenCiHeXiao]
|
||||
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType])
|
||||
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE
|
||||
,(CASE WHEN b.FALLAMOUNT22<c.FALLAMOUNT33 THEN b.FALLAMOUNT22 ELSE c.FALLAMOUNT33 END)
|
||||
,@FSALEORGID,'<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>',@fid2,dd.FExchangeRate,FSettleCurrId,FLocalCurrId,0 FROM T_SAL_ORDER a
|
||||
LEFT JOIN T_AutoWrireRecordEntry b ON a.FBILLNO=b.FBILLNO2
|
||||
LEFT JOIN T_AutoWrireRecordEntry2 c ON b.FID=c.FID
|
||||
LEFT JOIN T_SAL_ORDERFIN dd ON a.FID=dd.FID
|
||||
WHERE b.FID=@fid2 AND c.FBILLNO3=@FBILLNO )
|
||||
END
|
||||
end
|
||||
------<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>--------------
|
||||
SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0;
|
||||
SELECT @fid2=FID FROM dbo.VRYF_t_Cust_Entry100025 WHERE FBILLNO3=@FBILLNO
|
||||
|
||||
SELECT @FDATE=FCREATEDATE,@fid3=FID FROM VRYF_t_Cust100015
|
||||
WHERE FID=@fid2 AND FDOCUMENTSTATUS='C'
|
||||
IF(@fid3>0)
|
||||
BEGIN
|
||||
SELECT @F_contractnumber=FCONTRACTNUMBER,@amount=FALLAMOUNT22 FROM VRYF_t_Cust_Entry100024 a WHERE a.FID=@fid2
|
||||
SELECT @hexiao=@amount;
|
||||
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
||||
([XiaoShouFid]
|
||||
,[XiaoShouBillNo]
|
||||
,[XiaoShouHeTong]
|
||||
,[ShouKuanFid]
|
||||
,[ShouKuanBillNo]
|
||||
,[ShouKuanFDate]
|
||||
,[BenCiHeXiao]
|
||||
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType])
|
||||
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,@amount,@FSALEORGID,'<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>',@fid2, dd.FExchangeRate,FSettleCurrId,FLOCALCURRID,0 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
|
||||
-----Ӧ<EFBFBD>պ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>---------
|
||||
SELECT @fid2=0,@fid3=0,@F_contractnumber='',@amount=0;
|
||||
SELECT d.FDATE,FBILLFORMID, FVERIFYSEQ,FSOURCETYPE,FCURWRITTENOFFAMOUNTFOR,FCURWRITTENOFFAMOUNT,FSRCBILLNO,b.FEXCHANGERATE,FCURTAXMATCHAMOUNT,FCURNOTAXMATCHAMOUNT ,FSRCBILLID
|
||||
INTO #temp2
|
||||
FROM T_AR_RECMacthLog a
|
||||
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_AR_RECEIVEBILL d ON d.FBILLNO=b.FSRCBILLNO
|
||||
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')
|
||||
--SELECT * FROM #temp2
|
||||
--SELECT @amount= SUM(FCURWRITTENOFFAMOUNT) FROM #temp2 WHERE FBILLFORMID !='AR_RECEIVEBILL'
|
||||
SELECT @fid2=FSRCBILLID,@fid3=FVERIFYSEQ FROM #temp2 WHERE FBILLFORMID ='AR_receivable'
|
||||
--SELECT @F_contractnumber= F_PAPERPRO FROM T_AR_receivable WHERE fid=@fid2
|
||||
--PRINT '<EFBFBD><EFBFBD>ͬ<EFBFBD>ţ<EFBFBD>'+@F_contractnumber;
|
||||
IF(@fid2>0)
|
||||
BEGIN
|
||||
SELECT @hexiao=1;
|
||||
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
||||
([XiaoShouFid]
|
||||
,[XiaoShouBillNo]
|
||||
,[XiaoShouHeTong]
|
||||
,[ShouKuanFid]
|
||||
,[ShouKuanBillNo]
|
||||
,[ShouKuanFDate]
|
||||
,[BenCiHeXiao]
|
||||
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType])
|
||||
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,d.FCURWRITTENOFFAMOUNTFOR,@FSALEORGID,'Ӧ<EFBFBD>պ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>',@fid3
|
||||
,dd.FEXCHANGERATE,FSettleCurrId,FLOCALCURRID,0
|
||||
FROM T_SAL_ORDER a
|
||||
LEFT JOIN T_SAL_ORDERFIN dd ON a.FID=dd.FID
|
||||
LEFT JOIN T_AR_receivable c ON c.F_PAPERPRO=a.F_CONTRACTNUMBER AND c.FSALEORGID=a.FSALEORGID
|
||||
LEFT JOIN #temp2 d ON d.FSRCBILLID=c.fid AND d.FBILLFORMID ='AR_receivable'
|
||||
WHERE a.FSALEORGID=@FSALEORGID AND d.FBILLFORMID='AR_receivable')
|
||||
end
|
||||
DROP TABLE #temp2
|
||||
--------------<EFBFBD>տ<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>ϸ--------
|
||||
IF(@hexiao=0)
|
||||
begin
|
||||
SELECT @fid2=a.FID FROM T_AR_RECEIVEBILL a LEFT JOIN T_AR_RECEIVEBILLSRCENTRY b ON a.FID=b.FID
|
||||
WHERE a.fid=@ShouKuanFID
|
||||
IF(@fid2>0)
|
||||
BEGIN
|
||||
SELECT @hexiao=1;
|
||||
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
||||
([XiaoShouFid]
|
||||
,[XiaoShouBillNo]
|
||||
,[XiaoShouHeTong]
|
||||
,[ShouKuanFid]
|
||||
,[ShouKuanBillNo]
|
||||
,[ShouKuanFDate]
|
||||
,[BenCiHeXiao]
|
||||
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType])
|
||||
( SELECT aa.fid,aa.FBILLNO,aa.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,b.FREALRECAMOUNT,@FSALEORGID,'<EFBFBD>տ<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>ϸ',@fid2
|
||||
,dd.FEXCHANGERATE,FSettleCurrId,FLOCALCURRID,0
|
||||
FROM T_AR_RECEIVEBILL a LEFT JOIN T_AR_RECEIVEBILLSRCENTRY b ON a.FID=b.FID
|
||||
LEFT JOIN dbo.T_SAL_ORDER aa ON b.FSRCBILLID=aa.FID
|
||||
LEFT JOIN T_SAL_ORDERFIN dd ON aa.FID=dd.FID
|
||||
WHERE a.fid=@ShouKuanFID AND b.FREALRECAMOUNT <>0 )
|
||||
END
|
||||
end
|
||||
--------<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>--------------
|
||||
IF(@FSALEORGID=100302)
|
||||
begin
|
||||
SELECT @hexiao=1;
|
||||
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
||||
([XiaoShouFid]
|
||||
,[XiaoShouBillNo]
|
||||
,[XiaoShouHeTong]
|
||||
,[ShouKuanFid]
|
||||
,[ShouKuanBillNo]
|
||||
,[ShouKuanFDate]
|
||||
,[BenCiHeXiao]
|
||||
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID,[ShouKuanType])
|
||||
( SELECT a.fid,a.FBILLNO,a.F_CONTRACTNUMBER,@ShouKuanFID,@FBILLNO,@FDATE,F_shareAmount,@FSALEORGID,'<EFBFBD><EFBFBD>ʷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>',c.FEntryID ,dd.FEXCHANGERATE,FSettleCurrId,FLOCALCURRID,0 FROM T_SAL_ORDER a
|
||||
LEFT 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=[FSaleOrgId] AND F_matched=1 AND c.F_Receiptnumber=@FBILLNO )
|
||||
END
|
||||
|
||||
-- <20><>ȡ<EFBFBD><C8A1>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>¼
|
||||
FETCH NEXT FROM cursor_name2
|
||||
INTO @FDATE,
|
||||
@FBILLNO,
|
||||
@ShouKuanFID,
|
||||
@FSALEORGID,
|
||||
@F_contractnumber;
|
||||
END
|
||||
|
||||
-- 4. <20>ر<EFBFBD><D8B1>α<EFBFBD>
|
||||
CLOSE cursor_name2;
|
||||
|
||||
-- 5. <20>ͷ<EFBFBD><CDB7>α<EFBFBD><CEB1><EFBFBD>Դ
|
||||
DEALLOCATE cursor_name2;
|
||||
END
|
||||
Reference in New Issue
Block a user