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.

165 lines
13 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_AGENT_BAL_MASTER] 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_AGENT_BAL_MASTER]
  9. @flag VARCHAR(50) = NULL
  10. ,@user VARCHAR(30) = NULL
  11. ,@ROWID VARCHAR(30) = NULL
  12. ,@AGENT_ID INT = NULL
  13. ,@MAX_LIMIT_AMT MONEY = NULL
  14. ,@BASE_LIMIT_AMT MONEY = NULL
  15. ,@TEMP_LIMIT_AMT MONEY = NULL
  16. ,@TODAY_SENT_AMT MONEY = NULL
  17. ,@TODAY_PAID_AMT MONEY = NULL
  18. ,@TODAY_CANCLE_AMT MONEY = NULL
  19. ,@AC_BAL_AMT MONEY = NULL
  20. ,@HELD_AMT MONEY = NULL
  21. ,@SYSTEM_RES_AMT MONEY = NULL
  22. AS
  23. SET NOCOUNT ON
  24. SET XACT_ABORT ON
  25. BEGIN TRY
  26. CREATE TABLE #msg(error_code INT, msg VARCHAR(100), id INT)
  27. DECLARE
  28. @sql VARCHAR(MAX)
  29. ,@oldValue VARCHAR(MAX)
  30. ,@newValue VARCHAR(MAX)
  31. ,@tableName VARCHAR(50)
  32. DECLARE
  33. @select_field_list VARCHAR(MAX)
  34. ,@extra_field_list VARCHAR(MAX)
  35. ,@table VARCHAR(MAX)
  36. ,@sql_filter VARCHAR(MAX)
  37. DECLARE
  38. @gridName VARCHAR(50)
  39. ,@modType VARCHAR(6)
  40. IF @flag='a'
  41. BEGIN
  42. SELECT * FROM AGENT_BAL_MASTER WHERE (IS_DELETE IS NULL OR IS_DELETE ='')
  43. END
  44. IF @flag = 'i'
  45. BEGIN
  46. BEGIN TRANSACTION
  47. INSERT INTO AGENT_BAL_MASTER (
  48. AGENT_ID
  49. ,MAX_LIMIT_AMT
  50. ,BASE_LIMIT_AMT
  51. ,TEMP_LIMIT_AMT
  52. ,TODAY_SENT_AMT
  53. ,TODAY_PAID_AMT
  54. ,TODAY_CANCLE_AMT
  55. ,AC_BAL_AMT
  56. ,HELD_AMT
  57. ,SYSTEM_RES_AMT
  58. ,CREATED_DATE
  59. ,CREATED_BY
  60. )
  61. SELECT
  62. @AGENT_ID
  63. ,@MAX_LIMIT_AMT
  64. ,@BASE_LIMIT_AMT
  65. ,@TEMP_LIMIT_AMT
  66. ,@TODAY_SENT_AMT
  67. ,@TODAY_PAID_AMT
  68. ,@TODAY_CANCLE_AMT
  69. ,@AC_BAL_AMT
  70. ,@HELD_AMT
  71. ,@SYSTEM_RES_AMT
  72. ,GETDATE()
  73. ,@user
  74. SET @ROWID = SCOPE_IDENTITY()
  75. EXEC [dbo].proc_GetColumnToRow 'AGENT_BAL_MASTER', 'ROWID', @ROWID, @newValue OUTPUT
  76. INSERT INTO #msg(error_code, msg, id)
  77. EXEC proc_applicationLogs 'i', NULL, 'insert', 'AGENT_BAL_MASTER', @ROWID, @user, @oldValue, @newValue
  78. IF EXISTS (SELECT 'X' FROM #msg WHERE error_code <> 0 )
  79. BEGIN
  80. IF @@TRANCOUNT > 0
  81. ROLLBACK TRANSACTION
  82. SELECT 1 error_code, 'Record can not be updated.' mes, @ROWID id
  83. RETURN
  84. END
  85. IF @@TRANCOUNT > 0
  86. COMMIT TRANSACTION
  87. SELECT 0 error_code, 'Record has been added successfully' mes, @ROWID id
  88. END
  89. ELSE IF @flag = 'u'
  90. BEGIN
  91. BEGIN TRANSACTION
  92. EXEC [dbo].proc_GetColumnToRow 'AGENT_BAL_MASTER', 'ROWID', @ROWID, @oldValue OUTPUT
  93. UPDATE AGENT_BAL_MASTER SET
  94. AGENT_ID = @AGENT_ID
  95. ,MAX_LIMIT_AMT = @MAX_LIMIT_AMT
  96. ,BASE_LIMIT_AMT = @BASE_LIMIT_AMT
  97. ,TEMP_LIMIT_AMT = @TEMP_LIMIT_AMT
  98. ,TODAY_SENT_AMT = @TODAY_SENT_AMT
  99. ,TODAY_PAID_AMT = @TODAY_PAID_AMT
  100. ,TODAY_CANCLE_AMT = @TODAY_CANCLE_AMT
  101. ,AC_BAL_AMT = @AC_BAL_AMT
  102. ,HELD_AMT = @HELD_AMT
  103. ,SYSTEM_RES_AMT = @SYSTEM_RES_AMT
  104. ,MODIFY_DATE = GETDATE()
  105. ,MODIFY_BY = @user
  106. WHERE ROWID = @ROWID
  107. EXEC [dbo].proc_GetColumnToRow 'AGENT_BAL_MASTER', 'ROWID', @ROWID, @newValue OUTPUT
  108. INSERT INTO #msg(error_code, msg, id)
  109. EXEC proc_applicationLogs 'i', NULL, 'update', 'AGENT_BAL_MASTER', @ROWID, @user, @oldValue, @newValue
  110. IF EXISTS (SELECT 'X' FROM #msg WHERE error_code <> 0 )
  111. BEGIN
  112. IF @@TRANCOUNT > 0
  113. ROLLBACK TRANSACTION
  114. SELECT 1 error_code, 'Record can not be updated.' mes, @ROWID id
  115. RETURN
  116. END
  117. IF @@TRANCOUNT > 0
  118. COMMIT TRANSACTION
  119. SELECT 0 error_code, 'Record updated successfully.' mes, @ROWID id
  120. END
  121. ELSE IF @flag = 'd'
  122. BEGIN
  123. BEGIN TRANSACTION
  124. UPDATE AGENT_BAL_MASTER SET
  125. IS_DELETE = 'Y'
  126. ,MODIFY_BY = @user
  127. ,MODIFY_DATE =GETDATE()
  128. WHERE ROWID = @ROWID
  129. EXEC [dbo].proc_GetColumnToRow 'AGENT_BAL_MASTER', 'ROWID', @ROWID, @oldValue OUTPUT
  130. INSERT INTO #msg(error_code, msg, id)
  131. EXEC proc_applicationLogs 'i', NULL, 'delete', 'AGENT_BAL_MASTER', @ROWID, @user, @oldValue, @newValue
  132. IF EXISTS (SELECT 'X' FROM #msg WHERE error_code <> 0 )
  133. BEGIN
  134. IF @@TRANCOUNT > 0
  135. ROLLBACK TRANSACTION
  136. SELECT 1 error_code, 'Record can not be deleted.' mes, @ROWID id
  137. RETURN
  138. END
  139. IF @@TRANCOUNT > 0
  140. COMMIT TRANSACTION
  141. SELECT 0 error_code, 'Record deleted successfully.' mes, @ROWID id
  142. END
  143. END TRY
  144. BEGIN CATCH
  145. IF @@TRANCOUNT > 0
  146. ROLLBACK TRANSACTION
  147. SELECT 1 error_code, ERROR_MESSAGE() mes, null id
  148. END CATCH
  149. GO