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.

160 lines
6.4 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_domesticTxnRpt] Script Date: 7/4/2019 11:35:48 AM ******/
  4. DROP PROCEDURE [dbo].[proc_domesticTxnRpt]
  5. GO
  6. /****** Object: StoredProcedure [dbo].[proc_domesticTxnRpt] Script Date: 7/4/2019 11:35:48 AM ******/
  7. SET ANSI_NULLS ON
  8. GO
  9. SET QUOTED_IDENTIFIER ON
  10. GO
  11. CREATE PROCEDURE [dbo].[proc_domesticTxnRpt]
  12. @flag VARCHAR(10),
  13. @user VARCHAR(50),
  14. @fromDate VARCHAR(10),
  15. @toDate VARCHAR(10)
  16. AS
  17. SET NOCOUNT ON;
  18. ----SELECT @fromDate='2014-04-15',@toDate='2014-04-15',@flag='summary'
  19. BEGIN
  20. IF @flag='d'
  21. BEGIN
  22. SELECT UPPER(A.AGENT_NAME) AGENT,
  23. SUM(S_TXN) SEND_TXN,
  24. SUM(S_AMT) SEND_AMT,
  25. SUM(S_SC) SEND_SC,
  26. SUM(P_TXN) PAID_TXN,
  27. SUM(P_AMT) PAID_AMT,
  28. SUM(P_RC) PAID_RC,
  29. SUM(C_TXN) [SAME DAY CANCEL_TXN],
  30. SUM(C_AMT) [SAME DAY CANCEL_AMT],
  31. SUM(TXN) [NEXT DAY CANCEL_TXN],
  32. SUM(samt) [NEXT DAY CANCEL_AMT]
  33. FROM (
  34. SELECT S_AGENT ,
  35. COUNT(TRN_REF_NO) S_TXN,
  36. SUM(s_Amt) S_AMT,
  37. SUM(ISNULL(s_sc,0)) S_SC,
  38. 0 P_TXN, 0 P_AMT, 0 P_RC,
  39. 0 C_TXN, 0 C_AMT, 0 TXN, 0 samt
  40. FROM
  41. (
  42. SELECT ISNULL (AT.central_sett_code,map_code) S_AGENT, TRN_REF_NO , S_Amt ,total_sc,s_sc,p_amt,R_sc
  43. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  44. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  45. WHERE confirm_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  46. ) X
  47. GROUP BY S_AGENT
  48. UNION ALL
  49. SELECT R_AGENT,0,0,0,COUNT(TRN_REF_NO) TXN, SUM(P_AMT) PAYOUT, SUM(r_sc) PCOM,0,0,0,0
  50. FROM
  51. (
  52. SELECT ISNULL (AT.central_sett_code,map_code) R_AGENT, TRN_REF_NO ,r_sc,p_amt
  53. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  54. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.R_AGENT=AT.AGENT_IME_CODE
  55. WHERE P_DATE BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  56. ) X
  57. GROUP BY R_AGENT
  58. UNION ALL
  59. SELECT S_AGENT,0,0,0,0,0,0,COUNT(TRN_REF_NO) C_TXN ,SUM(S_AMT) C_AMT , 0 ,0
  60. FROM
  61. (
  62. SELECT ISNULL (AT.central_sett_code,map_code) S_AGENT, TRN_REF_NO , S_AMT
  63. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  64. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH(NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  65. WHERE cancel_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  66. AND CAST(CANCEL_DATE AS DATE)=CAST(CONFIRM_DATE AS DATE)
  67. ) X
  68. GROUP BY S_AGENT
  69. UNION ALL
  70. SELECT S_AGENT,0,0,0,0,0,0,0 C_TXN , 0 C_AMT , COUNT(TRN_REF_NO) TXN, SUM(P_AMT+R_sc) samt
  71. FROM
  72. (
  73. SELECT ISNULL (AT.central_sett_code,map_code) S_AGENT, TRN_REF_NO , p_amt , R_SC
  74. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  75. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  76. WHERE cancel_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  77. AND CAST(CANCEL_DATE AS DATE)<>CAST(CONFIRM_DATE AS DATE)
  78. ) X
  79. GROUP BY S_AGENT
  80. ) Z, FastMoneyPro_account.DBO.AGENTTABLE A WITH (NOLOCK) WHERE Z.S_AGENT=A.MAP_CODE
  81. GROUP BY AGENT_NAME
  82. ORDER BY AGENT_NAME
  83. END
  84. IF @flag='s'
  85. BEGIN
  86. SELECT 'Txn Send' particulars
  87. ,COUNT(TRN_REF_NO) TXN
  88. ,SUM(p_AMT) AMT
  89. ,SUM(S_SC) SC
  90. ,SUM(r_SC) RC
  91. ,SUM(ISNULL(total_sc,0) - ISNULL(s_sc,0)-ISNULL(R_sc,0)) HO
  92. ,SUM(p_AMT+ISNULL(total_sc,0)) TOTAL
  93. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  94. WHERE confirm_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  95. UNION ALL
  96. SELECT 'Send Today Paid Today' particulars, COUNT(TRN_REF_NO) S_TXN, SUM(P_AMT) S_AMT, 0 S_SC, SUM(ISNULL(r_SC,0)) R_SC, 0 S_HO ,SUM(P_AMT +ISNULL(R_SC,0)) TOTAL
  97. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  98. WHERE p_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  99. AND CAST (P_DATE AS DATE)=CAST (CONFIRM_DATE AS DATE)
  100. UNION ALL
  101. SELECT 'Send Yesterday Paid Today' particulars, COUNT(TRN_REF_NO) S_TXN, SUM(P_AMT) S_AMT,0 S_SC, SUM(r_SC) R_SC, 0 S_HO,SUM(P_AMT +ISNULL(R_SC,0)) TOTAL
  102. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  103. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  104. WHERE p_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  105. AND CAST (P_DATE AS DATE)<>CAST (CONFIRM_DATE AS DATE)
  106. UNION ALL
  107. SELECT 'Send Today Cancel Today' particulars, COUNT(TRN_REF_NO) TXN, SUM(P_AMT) AMT,
  108. SUM(S_SC) S_SC, SUM(ISNULL(R_SC,0)) R_SC, SUM(ISNULL(total_sc,0) - ISNULL(s_sc,0)-ISNULL(R_sc,0)) S_HO
  109. ,SUM(P_AMT +ISNULL(total_sc,0)) TOTAL
  110. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  111. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  112. WHERE cancel_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  113. AND CAST (cancel_date AS DATE)=CAST (CONFIRM_DATE AS DATE)
  114. UNION ALL
  115. SELECT 'Send Yesterday Cancel Today' particulars, COUNT(TRN_REF_NO) TXN, SUM(P_AMT) AMT,
  116. 0 S_SC, SUM(ISNULL(R_SC,0)) R_SC, 0 S_HO,SUM(P_AMT +ISNULL(r_sc,0)) total
  117. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  118. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  119. WHERE cancel_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  120. AND CAST (cancel_date AS DATE)<>CAST (CONFIRM_DATE AS DATE)
  121. UNION ALL
  122. SELECT 'Send Today Not Paid Today' particulars, COUNT(TRN_REF_NO) TXN, SUM(P_AMT) AMT,
  123. 0 S_SC, 0 R_SC, 0 S_HO,0 total
  124. FROM FastMoneyPro_account.DBO.REMIT_TRN_local R WITH (NOLOCK)
  125. RIGHT JOIN FastMoneyPro_account.DBO.agentTable AT WITH (NOLOCK) ON R.S_AGENT=AT.AGENT_IME_CODE
  126. WHERE confirm_date BETWEEN @fromDate AND @toDate + ' 23:59:59:998'
  127. AND(
  128. (PAY_STATUS ='Paid' and P_DATE > @toDate + ' 23:59:59:998' )
  129. OR (PAY_STATUS in ('Un-Paid','Payment') and TRN_STATUS <>'Cancel')
  130. OR (TRN_STATUS ='Cancel' and CANCEL_DATE > @toDate + ' 23:59:59:998' )
  131. )
  132. END
  133. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  134. SELECT 'From Date' head, CONVERT(VARCHAR(10), @fromDate, 101) value
  135. UNION ALL
  136. SELECT 'To Date' head, CONVERT(VARCHAR(10), @toDate, 101) value
  137. SELECT Title = CASE WHEN @flag = 'd' THEN 'Domestic Ac TXN Report Detail' ELSE 'Domestic Ac TXN Report Summary' END
  138. END
  139. GO