153 lines
5.9 KiB
MySQL
153 lines
5.9 KiB
MySQL
|
|
|
|||
|
|
|
|||
|
|
-- <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);
|
|||
|
|
-- 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
|
|||
|
|
---<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
|
|||
|
|
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
|||
|
|
([XiaoShouFid]
|
|||
|
|
,[XiaoShouBillNo]
|
|||
|
|
,[XiaoShouHeTong]
|
|||
|
|
,[ShouKuanFid]
|
|||
|
|
,[ShouKuanBillNo]
|
|||
|
|
,[ShouKuanFDate]
|
|||
|
|
,[BenCiHeXiao]
|
|||
|
|
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID)
|
|||
|
|
( 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 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
|
|||
|
|
|
|||
|
|
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
|||
|
|
([XiaoShouFid]
|
|||
|
|
,[XiaoShouBillNo]
|
|||
|
|
,[XiaoShouHeTong]
|
|||
|
|
,[ShouKuanFid]
|
|||
|
|
,[ShouKuanBillNo]
|
|||
|
|
,[ShouKuanFDate]
|
|||
|
|
,[BenCiHeXiao]
|
|||
|
|
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID)
|
|||
|
|
( 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 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
|
|||
|
|
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
|||
|
|
([XiaoShouFid]
|
|||
|
|
,[XiaoShouBillNo]
|
|||
|
|
,[XiaoShouHeTong]
|
|||
|
|
,[ShouKuanFid]
|
|||
|
|
,[ShouKuanBillNo]
|
|||
|
|
,[ShouKuanFDate]
|
|||
|
|
,[BenCiHeXiao]
|
|||
|
|
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID)
|
|||
|
|
( 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
|
|||
|
|
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><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>--------------
|
|||
|
|
IF(@FSALEORGID=100302)
|
|||
|
|
begin
|
|||
|
|
INSERT INTO [dbo].[ZZZ_HeXiaoBook]
|
|||
|
|
([XiaoShouFid]
|
|||
|
|
,[XiaoShouBillNo]
|
|||
|
|
,[XiaoShouHeTong]
|
|||
|
|
,[ShouKuanFid]
|
|||
|
|
,[ShouKuanBillNo]
|
|||
|
|
,[ShouKuanFDate]
|
|||
|
|
,[BenCiHeXiao]
|
|||
|
|
,[FSaleOrgId],Note,NoteFid,FExchangeRate,FSettleCurrId,FLOCALCURRID)
|
|||
|
|
( 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 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
|