You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

69 lines
2.7 KiB

--select * from FASTMONEYPRO_REMIT.DBO.REMITTRAN WHERE CONTROLNO = DBO.FNAENCRYPTSTRING('21221515')
USE FastMoneyPro_Account
GO
ALTER PROC PROC_REFERRAL_STATEMENT
(
@FLAG VARCHAR(30)
,@FROM_DATE VARCHAR(20)
,@TO_DATE VARCHAR(20)
,@REFERRAL_CODE VARCHAR(30)
)
AS
SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN
DECLARE @ACC_NUM VARCHAR(30);
IF EXISTS(SELECT * FROM FASTMONEYPRO_REMIT.DBO.REFERRAL_AGENT_WISE (NOLOCK) WHERE REFERRAL_CODE = @REFERRAL_CODE AND AGENT_ID <> 0)
BEGIN
SELECT @ACC_NUM = AC.ACCT_NUM
FROM FASTMONEYPRO_REMIT.DBO.REFERRAL_AGENT_WISE R(NOLOCK)
INNER JOIN FASTMONEYPRO_REMIT.DBO.APPLICATIONUSERS AU(NOLOCK) ON AU.AGENTID = R.AGENT_ID
INNER JOIN AC_MASTER AC(NOLOCK) ON AC.AGENT_ID = AU.USERID
WHERE R.REFERRAL_CODE = @REFERRAL_CODE
AND AC.ACCT_RPT_CODE = 'TCA';
END
ELSE
BEGIN
SELECT @ACC_NUM = AC.ACCT_NUM
FROM ac_master AC(NOLOCK)
INNER JOIN FASTMONEYPRO_REMIT.DBO.REFERRAL_AGENT_WISE R(NOLOCK) ON R.ROW_ID = AC.AGENT_ID
WHERE R.REFERRAL_CODE = @REFERRAL_CODE
AND AC.ACCT_RPT_CODE = 'RA';
END
set @TO_DATE = @TO_DATE +' 23:59:59'
CREATE TABLE #AC_STATEMENT(TranDate VARCHAR(20), JMENumber VARCHAR(200), Amount MONEY, TranType CHAR(2), field1 VARCHAR(30), field2 VARCHAR(20))
INSERT INTO #AC_STATEMENT
SELECT '' TranDate,'Balance Brought Forward' JMENumber
,Amount = ISNULL(SUM(CASE WHEN part_tran_type='dr' THEN tran_amt*-1 ELSE tran_amt END), 0)
,TranType =case when SUM(case when part_tran_type='dr' then tran_amt*-1 else tran_amt end) >0 then 'cr' else 'dr' end
,'' field1,'' field2
FROM tran_master(NOLOCK)
WHERE tran_date < @FROM_DATE AND acc_num = @ACC_NUM
GROUP BY acc_num
INSERT INTO #AC_STATEMENT
SELECT convert(varchar,tran_date,102) TranDate,JMENumber = CASE WHEN FIELD2 = 'Remittance Voucher' AND ACCT_TYPE_CODE IS NULL THEN field1
WHEN FIELD2 = 'Remittance Voucher' AND ACCT_TYPE_CODE = 'REVERSE' THEN field1 + ' - Cancelled' ELSE 'Cash Settled' END
,Amount = ISNULL((case when part_tran_type='dr' then tran_amt*-1 else tran_amt end), 0)
,t.part_tran_type TranType
,field1, field2
FROM tran_master T(NOLOCK)
INNER JOIN tran_masterDetail D (NOLOCK) ON T.REF_NUM = D.REF_NUM AND T.TRAN_TYPE = D.TRAN_TYPE
WHERE tran_date BETWEEN @FROM_DATE AND @TO_DATE
AND acc_num = @ACC_NUM
ALTER TABLE #AC_STATEMENT ADD CONTROLNO VARCHAR(50)
UPDATE #AC_STATEMENT SET CONTROLNO = CASE WHEN field2 = 'Remittance Voucher' THEN DBO.FNAENCRYPTSTRING(field1) ELSE NULL END
SELECT A.*, SenderName = CASE WHEN A.CONTROLNO IS NOT NULL THEN R.SENDERNAME ELSE '-' END
FROM #AC_STATEMENT A
LEFT JOIN FASTMONEYPRO_REMIT.DBO.REMITTRAN R(NOLOCK) ON R.CONTROLNO = A.CONTROLNO
ORDER BY TranDate ASC
END