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.

172 lines
10 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_userWiseTranRpt_new2] Script Date: 9/27/2019 1:30:14 PM ******/
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8. /*
  9. EXEC proc_userWiseTranRpt_new2 @FLAG='UWHO',@FROMDATE='10/18/2013',@TODATE='10/18/2013',@USERNAME=null,@userType='HO'
  10. EXEC proc_userWiseTranRpt_new2 @FLAG='UW',@FROMDATE='10/18/2013',@TODATE='10/18/2013',@USERNAME=null,@userType='HO'
  11. */
  12. CREATE procEDURE [dbo].[proc_userWiseTranRpt_new2]
  13. @flag VARCHAR(20),
  14. @fromDate VARCHAR(20) = NULL,
  15. @toDate VARCHAR(30) = NULL,
  16. @userName VARCHAR(50) = NULL,
  17. @userType VARCHAR(50) = NULL,
  18. @user VARCHAR(50) = NULL
  19. AS
  20. SET NOCOUNT ON;
  21. SET ANSI_NULLS ON;
  22. IF OBJECT_ID('tempdb..#tempAgentType') IS NOT NULL
  23. DROP TABLE #tempAgentType
  24. CREATE TABLE #tempAgentType
  25. (
  26. agentType varchar(50) null
  27. )
  28. IF @userType='HO'
  29. BEGIN
  30. INSERT INTO #tempAgentType
  31. SELECT '2901'
  32. END
  33. IF @userType='Agent'
  34. BEGIN
  35. INSERT INTO #tempAgentType
  36. SELECT valueId FROM staticDataValue WHERE valueId <> 2901 and typeID=2900
  37. END
  38. IF @userType IS NULL
  39. BEGIN
  40. INSERT INTO #tempAgentType
  41. SELECT valueId FROM staticDataValue WHERE typeID=2900
  42. END
  43. DECLARE @TABLE TABLE
  44. (
  45. BRANCHID INT,
  46. BRANCHNAME VARCHAR(200) ,
  47. USERNAME VARCHAR(50),
  48. TXNSEND INT,
  49. AMOUNTSEND MONEY,
  50. TXNPAID INT,
  51. AMOUNTPAID MONEY
  52. )
  53. SET @TODATE = @TODATE + ' 23:59:59'
  54. IF @FLAG='UWHO'
  55. BEGIN
  56. INSERT INTO @TABLE(BRANCHID,BRANCHNAME,USERNAME,TXNSEND,AMOUNTSEND)
  57. SELECT
  58. sBranch,
  59. sBranchName,
  60. txn.createdBy,
  61. COUNT('x'),
  62. SUM(cAmt)
  63. FROM remitTran txn WITH(NOLOCK)
  64. inner join applicationUsers au with(nolock) on au.userName = txn.createdBy
  65. inner join agentMaster am with(nolock) on au.agentId = am.agentId
  66. inner join #tempAgentType at with(nolock) on at.agentType = am.agentType
  67. WHERE txn.createdDate BETWEEN @fromDate AND @toDate
  68. AND txn.createdby = isnull(@userName,txn.createdBy)
  69. GROUP BY txn.createdBy,sBranchName,sBranch
  70. INSERT INTO @TABLE(BRANCHID,BRANCHNAME,USERNAME,TXNPAID,AMOUNTPAID)
  71. SELECT
  72. pBranch,
  73. pBranchName,
  74. txn.paidBy,
  75. COUNT('x'),
  76. SUM(pAmt)
  77. FROM remitTran txn WITH(NOLOCK)
  78. inner join applicationUsers au with(nolock) on au.userName = txn.paidBy
  79. inner join agentMaster am with(nolock) on au.agentId = am.agentId
  80. inner join #tempAgentType at with(nolock) on at.agentType = am.agentType
  81. WHERE txn.paidDate BETWEEN @fromDate AND @toDate
  82. AND txn.paidBy = isnull(@userName,txn.paidBy)
  83. GROUP BY txn.paidBy,pBranchName,pBranch
  84. SELECT DISTINCT USERNAME [HEAD] FROM @TABLE
  85. SELECT
  86. [HEAD] = USERNAME
  87. ,[Branch] = BRANCHNAME
  88. ,[#Send Trans] = SUM(ISNULL(TXNSEND,0))
  89. ,[Send Amount] = SUM(ISNULL(AMOUNTSEND,0))
  90. ,[#Paid Trans] = SUM(ISNULL(TXNPAID,0))
  91. ,[Paid Amount] = SUM(ISNULL(AMOUNTPAID,0))
  92. FROM @TABLE
  93. GROUP BY BRANCHNAME,USERNAME,BRANCHID
  94. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  95. SELECT 'From Date' head,@FROMDATE value
  96. UNION ALL
  97. SELECT 'To Date' head,@TODATE value
  98. UNION ALL
  99. SELECT 'User' head,isnull(@USERNAME,'All') value
  100. SELECT 'USER WISE DETAIL TRANSACTION REPORT' title
  101. END
  102. IF @FLAG='UW'
  103. BEGIN
  104. INSERT INTO @TABLE(BRANCHID,BRANCHNAME,USERNAME,TXNSEND,AMOUNTSEND)
  105. SELECT
  106. sBranch,
  107. sBranchName,
  108. txn.createdBy,
  109. COUNT('x'),
  110. SUM(cAmt)
  111. FROM vwRemitTran txn WITH(NOLOCK)
  112. inner join applicationUsers au with(nolock) on au.userName = txn.createdBy
  113. inner join agentMaster am with(nolock) on au.agentId = am.agentId
  114. inner join #tempAgentType at with(nolock) on at.agentType = am.agentType
  115. WHERE txn.createdDate BETWEEN @fromDate AND @toDate
  116. AND txn.createdby = isnull(@userName,txn.createdBy)
  117. GROUP BY txn.createdBy,sBranchName,sBranch
  118. INSERT INTO @TABLE(BRANCHID,BRANCHNAME,USERNAME,TXNPAID,AMOUNTPAID)
  119. SELECT
  120. pBranch,
  121. pBranchName,
  122. paidBy,
  123. COUNT('x'),
  124. SUM(pAmt)
  125. FROM vwRemitTran txn WITH(NOLOCK)
  126. inner join applicationUsers au with(nolock) on au.userName = txn.paidBy
  127. inner join agentMaster am with(nolock) on au.agentId = am.agentId
  128. inner join #tempAgentType at with(nolock) on at.agentType = am.agentType
  129. WHERE txn.paidDate BETWEEN @fromDate AND @toDate
  130. AND txn.paidBy = isnull(@userName,txn.paidBy)
  131. GROUP BY paidBy,pBranchName,pBranch
  132. SELECT
  133. [HEAD] = USERNAME
  134. ,[#SEND Trans] = SUM(ISNULL(TXNSEND,0))
  135. ,[SEND Amount] = SUM(ISNULL(AMOUNTSEND,0))
  136. ,[#Paid Trans] = SUM(ISNULL(TXNPAID,0))
  137. ,[Paid Amount] = SUM(ISNULL(AMOUNTPAID,0))
  138. FROM @TABLE GROUP BY USERNAME
  139. EXEC proc_errorHandler '0', 'Report has been prepared successfully.', NULL
  140. SELECT 'From Date' head,@FROMDATE value
  141. UNION ALL
  142. SELECT 'To Date' head,@TODATE value
  143. UNION ALL
  144. SELECT 'User' head,isnull(@USERNAME,'All') value
  145. SELECT 'USER WISE SUMMARY TRANSACTION REPORT' title
  146. END
  147. GO