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.

107 lines
7.5 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_erroneouslyPaidRpt] 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 proc [dbo].[proc_erroneouslyPaidRpt]
  9. @flag VARCHAR(50) = NULL
  10. ,@user VARCHAR(50) = NULL
  11. ,@controlNo VARCHAR(100) = NULL
  12. ,@fromDate VARCHAR(20) = NULL
  13. ,@toDate VARCHAR(20) = NULL
  14. ,@reportFor VARCHAR(20) = NULL
  15. ,@paymentMethod VARCHAR(50) = NULL
  16. ,@tranType VARCHAR(50) = NULL
  17. ,@sortOrder VARCHAR(50) = NULL
  18. ,@pageSize VARCHAR(20) = NULL
  19. ,@pageNumber VARCHAR(20) = NULL
  20. ,@sortBy VARCHAR(20) = NULL
  21. AS
  22. SET NOCOUNT ON
  23. SET XACT_ABORT ON
  24. IF @flag = 'a'
  25. BEGIN
  26. DECLARE @SQL AS VARCHAR(MAX),@SQL1 AS VARCHAR(MAX)
  27. SET @toDate=@toDate+' 23:59:59'
  28. SET @SQL ='
  29. SELECT DISTINCT
  30. [Control No] = ''<a href = "#" onclick="OpenInNewWindow('''''+dbo.FNAGetURL()+'Remit/Transaction/Reports/SearchTransaction.aspx?tranId=''+ cast(rt.id as varchar) +'''''')">''+dbo.FNADecryptString(controlNo)+''</a>''
  31. ,[Payout Amount] = ep.payoutAmt
  32. ,[EP Date] = CONVERT(VARCHAR,ep.createdDate,101)
  33. ,[EP By] = ep.createdBy
  34. ,[EP Agent] = ep.oldPBranchName
  35. ,[EP COMM] = ep.oldPAgentComm
  36. ,[PO Date] = CONVERT(VARCHAR,ep.newPaidDate,101)
  37. ,[PO By] = ep.newPaidBy
  38. ,[PO Agent] = ep.newPAgentName
  39. ,[PO COMM] = ep.newPAgentComm
  40. ,[Sending Agent] = rt.sAgentName
  41. ,[Sending Branch] = rt.sBranchName
  42. FROM errPaidTran ep WITH(NOLOCK)
  43. INNER JOIN remitTran rt on rt.id=ep.tranId
  44. WHERE 1=1'
  45. IF @reportFor IS NULL AND @controlNo IS NULL
  46. SET @SQL=@SQL+' AND (ep.createdDate between '''+@fromDate+''' and '''+@toDate+'''
  47. OR ep.newPaidDate between '''+@fromDate+''' and '''+@toDate+''')'
  48. IF @paymentMethod IS NOT NULL AND @controlNo IS NULL
  49. SET @SQL=@SQL+' AND rt.paymentMethod = '''+@paymentMethod+''''
  50. IF @tranType IS NOT NULL AND @controlNo IS NULL
  51. SET @SQL=@SQL+' AND rt.tranType = '''+@tranType+''''
  52. IF @reportFor='EP' AND @controlNo IS NULL
  53. SET @SQL=@SQL+' AND ep.approvedDate between '''+@fromDate+''' and '''+@toDate+''''
  54. IF @reportFor='PO' AND @controlNo IS NULL
  55. SET @SQL=@SQL+' AND ep.newPaidDate between '''+@fromDate+''' and '''+@toDate+''' and newpaidBy is not null and newPBranch is not null'
  56. IF @reportFor='EPO' AND @controlNo IS NULL
  57. SET @SQL=@SQL+' AND ep.approvedDate between '''+@fromDate+''' and '''+@toDate+''' AND ep.newPaidDate is null and ep.tranStatus = ''Unpaid'''
  58. IF @reportFor='EPC' AND @controlNo IS NULL
  59. SET @SQL=@SQL+' AND ep.modifiedDate between '''+@fromDate+''' and '''+@toDate+''' AND ep.tranStatus = ''Cancel'''
  60. IF @controlNo IS NOT NULL
  61. SET @SQL=@SQL+' AND rt.controlNo = '''+dbo.FNAEncryptString(@controlNo)+''''
  62. PRINT( @SQL)
  63. SET @SQL1='
  64. SELECT COUNT(''a'') AS TXNCOUNT,'+@pageSize+' PAGESIZE,'+@pageNumber+' PAGENUMBER FROM ('+ @SQL +') AS tmp;
  65. SELECT * FROM
  66. (
  67. SELECT ROW_NUMBER() OVER (ORDER BY [EP Date]) AS [S.N],*
  68. FROM
  69. (
  70. '+ @SQL +'
  71. ) AS aa
  72. ) AS tmp WHERE 1 = 1 AND tmp.[S.N] BETWEEN (('+@pageNumber+' - 1) * '+@pageSize+' + 1) AND '+@pageNumber+' * '+@pageSize+''
  73. EXEC(@SQL1)
  74. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  75. SELECT 'From Date' head, CONVERT(VARCHAR(10), @fromDate, 101) value
  76. UNION ALL
  77. SELECT 'To Date' head, CONVERT(VARCHAR(10), @toDate, 101) value
  78. UNION ALL
  79. SELECT 'Control No' head, @controlNo value
  80. UNION ALL
  81. SELECT 'Report For' head, @reportFor value
  82. SELECT 'Erroneously Paid & Payment Order Report' title
  83. END
  84. GO