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.

123 lines
7.8 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_Inboundsettlement] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. CREATE PROCEDURE [dbo].[proc_Inboundsettlement]
  9. @flag VARCHAR(20) = NULL,
  10. @pCountry VARCHAR(20) = NULL,
  11. @sAgent VARCHAR(50),
  12. @sBranch VARCHAR(20) = NULL,
  13. @fromDate VARCHAR(30) = NULL,
  14. @toDate VARCHAR(50) = NULL,
  15. @pageNumber VARCHAR(50) = NULL,
  16. @pageSize VARCHAR(50) = NULL,
  17. @user VARCHAR(50) = NULL
  18. AS
  19. SET NOCOUNT ON;
  20. SET ANSI_NULLS ON;
  21. IF @flag='s'
  22. BEGIN
  23. IF OBJECT_ID(N'tempdb..#SETTLEMENT') IS NOT NULL
  24. DROP TABLE #SETTLEMENT
  25. declare @sql varchar(max),@fxGain varchar(1),@agentCountry varchar(200),@isAgentUUM char(1) = null,@cutOffDate VARCHAR(20) = '2014-10-20'
  26. SELECT id,controlNo,holdTranId
  27. ,sCurrCostRate
  28. ,pCurrCostRate,pCurrHoMargin
  29. ,serviceCharge,pAgentComm,pAgentCommCurrency
  30. ,senderName,receiverName,sCountry,sAgent,sAgentName
  31. ,pCountry ,pAgent,pAgentName
  32. ,collCurr,tAmt,UsdAmount,pAmt,payoutCurr,tranStatus,payStatus
  33. ,createdDate
  34. ,approvedDate = CAST(approvedDate AS DATE)
  35. ,paidDate
  36. ,cancelApprovedDate = CAST(cancelApprovedDate AS DATE)
  37. INTO #SETTLEMENT
  38. FROM INBOUND_REMIT_TRAN(NOLOCK) IRT
  39. WHERE 1=1
  40. AND
  41. (
  42. (SAGENT=ISNULL(@sAgent, SAGENT) AND APPROVEDDATE BETWEEN @fromDate AND @toDate + ' 23:59:59')
  43. --OR (SAGENT=ISNULL(@sAgent, SAGENT) AND CANCELAPPROVEDDATE BETWEEN @fromDate AND @toDate + ' 23:59:59' AND sCountry = isnull(@pCountry,sCountry))
  44. --OR (PAGENT=ISNULL(@sAgent, PAGENT) AND PAIDDATE BETWEEN @fromDate AND @toDate + ' 23:59:59' AND pCountry = isnull(@pCountry,pCountry)
  45. --)
  46. )
  47. CREATE TABLE #SETTLEMENT_MAIN
  48. (
  49. REMARKS VARCHAR(100) NULL,
  50. [DATE] DATE NULL,
  51. TOTTRAN INT NULL,
  52. CURR VARCHAR(10) NULL,
  53. LCYCA MONEY NULL,
  54. LCYSC MONEY NULL,
  55. LCYTA MONEY NULL,
  56. LCYCOMM MONEY NULL,
  57. LCYFX MONEY NULL,
  58. LCYSETTL MONEY NULL,
  59. USDCA MONEY NULL,
  60. USDSC MONEY NULL,
  61. USDTA MONEY NULL,
  62. USDCOMM MONEY NULL,
  63. USDSETTL MONEY NULL,
  64. SUMPA MONEY NULL
  65. )
  66. SELECT * FROM
  67. (
  68. SELECT
  69. --[Remarks] = '<a href="Reports.aspx?reportName=irhSettDrilDwn&sAgent='+isnull(@sAgent, '')+'&pCountry='+
  70. --ISNULL(@pCountry,'')+'&sBranch='+ISNULL(CAST(@sBranch AS VARCHAR),'')+'&fromDate='+
  71. --convert(varchar,approvedDate,101)+'&toDate='+convert(varchar,approvedDate,101)+'&flag=Send"> '+ 'Remittance Send(+)' +' </a>'
  72. [DATE] = convert(varchar,approvedDate,101)
  73. ,[Total Trans] = COUNT(id)
  74. ,[IN COLLECTION CURRENCY_Total Collection] = ''
  75. ,[IN COLLECTION CURRENCY_Total Charge] = ''
  76. ,[IN COLLECTION CURRENCY_Principal Amount] = ''
  77. ,[IN COLLECTION CURRENCY_Agent<br /> Commission]= ''
  78. ,[IN COLLECTION CURRENCY_Settlement Amount] = ''
  79. ,[IN COLLECTION CURRENCY_Fx. Gain] = ''
  80. ,[IN USD_Total Collection] = (-SUM(UsdAmount))+ (-SUM(serviceCharge/1))
  81. ,[IN USD_Total Charge] = (-SUM(serviceCharge/1))
  82. ,[IN USD_Principal Amount] = (-SUM(UsdAmount/1))
  83. ,[IN USD_Agent <br /> Commission] = ''
  84. ,[IN USD_Settlement Amount] = (-SUM(UsdAmount))+ (-SUM(serviceCharge/1))
  85. ,[IN Paying_Principal Amount] = SUM(pAmt)
  86. FROM #SETTLEMENT
  87. WHERE SAGENT = ISNULL(@sAgent, SAGENT) AND APPROVEDDATE BETWEEN @fromDate AND @toDate + ' 23:59:59'
  88. GROUP BY convert(varchar,approvedDate,101)
  89. ) x ORDER BY CAST([DATE] AS DATE)
  90. END
  91. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  92. SELECT 'Receiving Country' head, 'South Korea' value
  93. UNION ALL
  94. SELECT 'Sending Agent' head, (SELECT agentName FROM agentMaster WITH (NOLOCK) WHERE agentId=@sAgent) value
  95. UNION ALL
  96. SELECT 'From Date' head,@fromDate VALUE
  97. UNION ALL
  98. SELECT 'To Date' head,@toDate VALUE
  99. SELECT 'Settlement Report' title
  100. GO