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.
238 lines
10 KiB
238 lines
10 KiB
USE [FastMoneyPro_Remit]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_complianceRpt] Script Date: 7/4/2019 11:35:48 AM ******/
|
|
DROP PROCEDURE [dbo].[proc_complianceRpt]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[proc_complianceRpt] Script Date: 7/4/2019 11:35:48 AM ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
CREATE PROCEDURE [dbo].[proc_complianceRpt]
|
|
(
|
|
@flag VARCHAR(20)=NULL
|
|
,@date VARCHAR(20)=NULL
|
|
,@rName VARCHAR(50)=NULL
|
|
,@fromDate VARCHAR(20)=NULL
|
|
,@toDate VARCHAR(20)=NULL
|
|
)
|
|
AS
|
|
BEGIN
|
|
IF @flag='rdd'
|
|
BEGIN
|
|
SELECT
|
|
[Receiver Name] =tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,'')
|
|
,[Id Type] = ISNULL(tr.idType2,tr.idType)
|
|
,[Id Number] = ISNULL(tr.idNumber2,tr.idNumber)
|
|
,[Control No] ='<a href = "#" onclick="OpenInNewWindow('''+FastMoneyPro_remit.dbo.FNAGetURL()+'Remit/Transaction/Reports/SearchTransaction.aspx?commentFlag=N&showBankDetail=N&tranId='+CAST(rt.id AS VARCHAR)+''')">'+FastMoneyPro_remit.dbo.FNADecryptString(controlNo)+'</a>'
|
|
,[Amount] =rt.pAmt
|
|
,[Payout Agent] =am.agentName
|
|
,[Tran Status] =rt.tranStatus
|
|
,[Pay Status] =rt.payStatus
|
|
FROM remitTran rt WITH(NOLOCK)
|
|
INNER JOIN tranreceivers tr WITH(NOLOCK) ON rt.id=tr.tranId
|
|
LEFT JOIN agentMaster am ON am.agentId=rt.pAgent
|
|
WHERE rt.createdDate BETWEEN @date AND @date+' 23:59:59'
|
|
AND rt.tranStatus <>'Cancel'
|
|
AND rt.tranType = 'I'
|
|
AND ltrim(rtrim(replace(tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,''),' ',' ')))
|
|
= replace(rtrim(ltrim(@rName)),' ',' ')
|
|
|
|
|
|
EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
|
|
|
|
SELECT 'Date ' head, @date value UNION ALL
|
|
SELECT 'Report By' head, 'Receiver Wise Tranaction Detail' value UNION ALL
|
|
SELECT 'Receiver Name' head, @rName value
|
|
|
|
SELECT 'Single Day Transaction ' title
|
|
RETURN
|
|
END
|
|
IF (@flag='muls')
|
|
BEGIN
|
|
IF OBJECT_ID('tempdb..#temp4') IS NOT NULL
|
|
DROP TABLE #temp4
|
|
IF OBJECT_ID('tempdb..#temp5') IS NOT NULL
|
|
DROP TABLE #temp5
|
|
|
|
SELECT
|
|
[Sender Name] ='Name: '+ts.firstName+' '+ISNULL(ts.middleName,'')+' '+ISNULL(ts.lastName1,'') + '<br/>'
|
|
+ISNULL(ts.idType,'')+' :'+ISNULL(ts.idNumber,'')+'<br/>Phone: '+ISNULL(ts.homePhone,ISNULL(ts.mobile,''))
|
|
,[Receiver Name] ='Name: '+tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+ '<br/>Cell: '
|
|
+ISNULL(tr.mobile,'')+'<br/>Address: '+ISNULL(tr.address,'')+ISNULL(','+tr.address2,'')
|
|
+'<br/>'+CASE WHEN ISNULL(tr.idType2,tr.idType) IS NULL OR ISNULL(tr.idNumber2,tr.idNumber) IS NULL THEN '' ELSE ISNULL(tr.idType2,tr.idType)+': '+ISNULL(tr.idNumber2,tr.idNumber) END
|
|
,[Control No] ='<a href = "#" onclick="OpenInNewWindow('''+FastMoneyPro_remit.dbo.FNAGetURL()+'Remit/Transaction/Reports/SearchTransaction.aspx?commentFlag=N&showBankDetail=N&tranId='+CAST(rt.id AS VARCHAR)+''')">'+FastMoneyPro_remit.dbo.FNADecryptString(controlNo)+'</a>'
|
|
,[Tran Date] = rt.createdDate
|
|
,[Sending Country] = rt.sCountry
|
|
,[Payment Method] = rt.paymentMethod --+ '-'+ dbo.decryptDb(rt.controlNo)
|
|
|
|
,[Money source] = ISNULL(rt.sourceOfFund,'Salary and Savings')
|
|
,pAmt = (rt.pAmt)
|
|
,[Payout currency] = ISNULL(rt.payoutCurr,'')
|
|
,[Payout Location] = ISNULL(rt.pBranchName,'')+'<b>('+ISNULL(ploc.districtName,'')+'</b>'
|
|
,[sName] = ts.firstName+' '+ISNULL(ts.middleName,'')+' '+ISNULL(ts.lastName1,'')+'-'+ ISNULL(ts.idNumber,'')
|
|
INTO #temp4
|
|
FROM remitTran rt WITH(NOLOCK)
|
|
INNER JOIN tranSenders ts WITH(NOLOCK) ON rt.id=ts.tranId
|
|
INNER JOIN tranreceivers tr WITH(NOLOCK) ON rt.id=tr.tranId
|
|
LEFT JOIN dbo.api_districtList ploc WITH(NOLOCK) ON rt.pLocation = ploc.districtCode
|
|
WHERE
|
|
rt.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
|
|
AND rt.tranType = 'I'
|
|
AND rt.tranStatus <>'Cancel'
|
|
|
|
SELECT sName
|
|
INTO #temp5
|
|
FROM #temp4
|
|
GROUP BY sName
|
|
HAVING SUM(pAmt)> = 1000.00 ORDER BY sName
|
|
|
|
SELECT [Sender Name],[Receiver Name],[Tran Date],[Control No],[Sending Country],[Payout Location]
|
|
,[Payment Method],dbo.ShowDecimal(pAmt)[Payout Amount],[Payout currency]
|
|
,a.[sName]
|
|
FROM #temp4 a INNER JOIN #temp5 b ON a.sName = b.sName ORDER BY a.sName
|
|
|
|
SELECT * FROM #temp5 ORDER BY sName
|
|
|
|
|
|
EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
|
|
|
|
SELECT 'From Date ' head, @fromDate value UNION ALL
|
|
SELECT 'To Date ' head, @toDate value UNION ALL
|
|
SELECT 'Report By' head, (SELECT CASE WHEN @flag = 'muls' THEN 'Sender Wise Multiple Tranaction' WHEN @flag ='mulr' THEN 'Receiver Wise Multiple Tranaction' END) value
|
|
SELECT 'Multiple Day Transaction ' title
|
|
|
|
RETURN
|
|
|
|
END
|
|
IF @flag='mulr'
|
|
BEGIN
|
|
IF OBJECT_ID('tempdb..#temp3') IS NOT NULL
|
|
DROP TABLE #temp3
|
|
SELECT
|
|
[Receiver Name] =tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,'')
|
|
,Amount =rt.pAmt
|
|
,AmountInUSD =rt.pAmt / ISNULL(rt.pCurrCostRate,1) - ISNULL(rt.pCurrHoMargin, 0)
|
|
,Remarks =CAST(rt.createdDate AS DATE)
|
|
,rName =tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,'')
|
|
,pAmt
|
|
,txnDate=CAST(rt.createdDate AS DATE)
|
|
INTO #temp3
|
|
FROM remitTran rt WITH(NOLOCK)
|
|
INNER JOIN tranreceivers tr WITH(NOLOCK) ON rt.id=tr.tranId
|
|
WHERE rt.createdDate BETWEEN @fromDate AND @toDate+' 23:59:59'
|
|
AND rt.tranType = 'I'
|
|
AND rt.tranStatus <>'Cancel'
|
|
|
|
SELECT [SNO] = ROW_NUMBER() OVER (ORDER BY rName ASC)
|
|
,'Receiver Name' ='<a href = "#" onclick="OpenInNewWindow(''Reports.aspx?reportName=nrb_report&flag=rdd&rName='+rName+'&type=r&date='+CAST(txnDate AS VARCHAR)+''')">'+rName+'</a>'
|
|
,'Remitance in NPR_Txn Count' =COUNT(rName)
|
|
,'Remitance in NPR_Total Amount(NPR)'=SUM(Amount)
|
|
,'Remitance in USD_Txn Count' =COUNT(rName)
|
|
,'Remitance in USD_Total Amount(USD)'=SUM(AmountInUSD)
|
|
,'Date' =txnDate
|
|
FROM #temp3 GROUP BY rName,txnDate
|
|
HAVING SUM(pAmt)> = 1000.00
|
|
ORDER BY rName
|
|
|
|
EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
|
|
|
|
SELECT 'From Date ' head, @fromDate value UNION ALL
|
|
SELECT 'To Date ' head, @toDate value UNION ALL
|
|
SELECT 'Report By' head, (SELECT CASE WHEN @flag = 'muls' THEN 'Sender Wise Multiple Tranaction' WHEN @flag ='mulr' THEN 'Receiver Wise Multiple Tranaction' END) value
|
|
SELECT 'Multiple Day Transaction ' title
|
|
|
|
RETURN
|
|
END
|
|
IF @flag='r'
|
|
BEGIN
|
|
SELECT
|
|
[Receiver Name] =tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,'')
|
|
,Amount =rt.pAmt
|
|
,AmountInUSD =rt.pAmt / ISNULL(rt.pCurrCostRate,1) - ISNULL(rt.pCurrHoMargin, 0)
|
|
,Remarks =rt.createdDate
|
|
,rName =tr.firstName+' '+ISNULL(tr.middleName,'')+' '+ISNULL(tr.lastName1,'')+' '+ISNULL(tr.lastName2,'')
|
|
,pAmt
|
|
INTO #temp2
|
|
FROM remitTran rt WITH(NOLOCK)
|
|
INNER JOIN tranreceivers tr WITH(NOLOCK) ON rt.id=tr.tranId
|
|
WHERE rt.createdDate BETWEEN @date AND @date+' 23:59:59'
|
|
AND rt.tranType = 'I'
|
|
AND rt.tranStatus <>'Cancel'
|
|
|
|
update #temp2 set rName = REPLACE(rName,' ',' ')
|
|
|
|
SELECT [SNO] = ROW_NUMBER() OVER (ORDER BY rName ASC)
|
|
,'Receiver Name' ='<a href = "#" onclick="OpenInNewWindow(''Reports.aspx?reportName=nrb_report&flag=rdd&rName='+rName+'&type=r&date='+@date+''')">'+rName+'</a>'
|
|
,'Remitance in NPR_Txn Count' =COUNT(rName)
|
|
,'Remitance in NPR_Total Amount(NPR)'=SUM(Amount)
|
|
,'Remitance in USD_Txn Count' =COUNT(rName)
|
|
,'Remitance in USD_Total Amount(USD)'=SUM(AmountInUSD)
|
|
,'Date' =@date
|
|
FROM #temp2 GROUP BY rName
|
|
HAVING SUM(pAmt)> = 1000.00
|
|
ORDER BY rName
|
|
|
|
END
|
|
IF @flag='s'
|
|
BEGIN
|
|
IF OBJECT_ID('tempdb..#temp') IS NOT NULL
|
|
DROP TABLE #temp
|
|
IF OBJECT_ID('tempdb..#temp1') IS NOT NULL
|
|
DROP TABLE #temp1
|
|
|
|
SELECT
|
|
[Sender Name] ='Name: '+rt.senderName+ '<br/>'
|
|
+ISNULL(ts.idType,'')+' :'+ISNULL(ts.idNumber,'')+'<br/>Phone: '+ISNULL(ts.homePhone,ISNULL(ts.mobile,''))
|
|
,[Receiver Name] ='Name: '+rt.receiverName+ '<br/>Cell: '
|
|
+ISNULL(tr.mobile,'')+'<br/>Address: '+ISNULL(tr.address,'')+ISNULL(','+tr.address2,'')
|
|
+'<br/>'+CASE WHEN ISNULL(tr.idType2,tr.idType) IS NULL OR ISNULL(tr.idNumber2,tr.idNumber) IS NULL THEN '' ELSE ISNULL(tr.idType2,tr.idType)+': '+ISNULL(tr.idNumber2,tr.idNumber) END
|
|
,[Control No] ='<a href = "#" onclick="OpenInNewWindow('''+dbo.FNAGetURL()+'Remit/Transaction/Reports/SearchTransaction.aspx?tranId='+CAST(rt.id AS VARCHAR)+''')">'+ dbo.FNADecryptString(rt.controlNo) +'</a>'
|
|
,[Tran Date] = rt.createdDate
|
|
,[Sending Country] = rt.sCountry
|
|
,[Payment Method] = rt.paymentMethod
|
|
,[Money source] = ISNULL(rt.sourceOfFund,'Salary and Savings')
|
|
,[pAmt] = rt.pAmt
|
|
,[Payout currency] = ISNULL(rt.payoutCurr,'')
|
|
,[Payout Location] = ISNULL(rt.pBranchName,'')+'<b>('+ISNULL(ploc.districtName,'')+'</b>'
|
|
,[sName] = rt.senderName+'-'+ ISNULL(ts.idNumber,'')
|
|
INTO #temp
|
|
FROM remitTran rt WITH(NOLOCK)
|
|
INNER JOIN tranSenders ts WITH(NOLOCK) ON rt.id=ts.tranId
|
|
INNER JOIN tranreceivers tr WITH(NOLOCK) ON rt.id=tr.tranId
|
|
LEFT JOIN dbo.api_districtList ploc WITH(NOLOCK) ON rt.pLocation = ploc.districtCode
|
|
WHERE rt.createdDate BETWEEN @date AND @date+' 23:59:59'
|
|
AND rt.tranType = 'I'
|
|
AND tranStatus <> 'Cancel'
|
|
|
|
SELECT sName
|
|
INTO #temp1
|
|
FROM #temp
|
|
GROUP BY sName
|
|
HAVING SUM(pAmt)> = 1000.00 ORDER BY sName
|
|
|
|
SELECT
|
|
[Sender Name],
|
|
[Receiver Name],
|
|
[Tran Date],
|
|
[Control No],
|
|
[Sending Country],
|
|
[Payout Location],
|
|
[Payment Method],
|
|
[Payout Amount] = dbo.ShowDecimal(pAmt),
|
|
[Payout currency],
|
|
sName = a.[sName]
|
|
FROM #temp a INNER JOIN #temp1 b ON a.sName = b.sName ORDER BY a.sName
|
|
|
|
SELECT * FROM #temp1 ORDER BY sName
|
|
END
|
|
|
|
EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
|
|
|
|
SELECT 'Date ' head, @date value UNION ALL
|
|
SELECT 'Report By' head, (SELECT CASE WHEN @flag = 's' THEN 'Sender Wise Tranaction' WHEN @flag ='r' THEN 'Receiver Wise Tranaction' END) value
|
|
SELECT 'Single Day Transaction ' title
|
|
|
|
END
|
|
|
|
GO
|