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.

471 lines
36 KiB

1 year ago
  1. USE [FastMoneyPro_Remit]
  2. GO
  3. /****** Object: StoredProcedure [dbo].[proc_ws_globalBank] 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_ws_globalBank]
  9. (
  10. @flag VARCHAR(50)
  11. ,@user VARCHAR(30)
  12. ,@controlNo VARCHAR(100) = NULL
  13. ,@id BIGINT = NULL
  14. ,@msg VARCHAR(MAX) = NULL
  15. ,@xml VARCHAR(MAX) = NULL
  16. ,@xmlAPI XML = NULL
  17. ,@syncDate VARCHAR(20) = NULL
  18. ,@status VARCHAR(20) = NULL
  19. ,@controlNo2 VARCHAR(20) = NULL
  20. ,@remarks VARCHAR(500) = NULL
  21. ,@errorCode VARCHAR(50) = NULL
  22. ,@errorMsg VARCHAR(100) = NULL
  23. ,@tpErrorCode VARCHAR(50) = NULL
  24. ,@rNameIME VARCHAR(200) = NULL
  25. ,@rNameGbl VARCHAR(200) = NULL
  26. )
  27. AS
  28. SET NOCOUNT ON
  29. SET XACT_ABORT ON
  30. BEGIN TRY
  31. DECLARE @gblPayAgentId INT = 37402
  32. DECLARE @controlNoEncrypted VARCHAR(50)
  33. declare @rCountry varchar(50)
  34. ,@pBranch int
  35. ,@psAgent int
  36. ,@pCountryId int
  37. ,@pAgentName varchar(100)
  38. IF @flag = 'ss' --Sync Status
  39. BEGIN
  40. SELECT
  41. @errorCode = '1'
  42. ,@errorMsg = 'Could not Synchronize the Transaction. Unknown Transaction status in API'
  43. IF @status = 'Paid'
  44. BEGIN
  45. SELECT @errorCode = '0', @errorMsg = 'Paid Transaction Synchronized Successfully'
  46. UPDATE remitTran SET
  47. tranStatus = 'Paid'
  48. ,payStatus = 'Paid'
  49. ,lockStatus = 'unlocked'
  50. ,paidBy = @user
  51. ,paidDate = ISNULL(paidDate, GETDATE())
  52. ,paidDateLocal = ISNULL(paidDateLocal, DBO.FNADateFormatTZ(GETDATE(), @user))
  53. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  54. UPDATE dbo.tpTxnList SET status = 'Paid' WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  55. END
  56. ELSE IF @status = 'CANCELLED'
  57. BEGIN
  58. SET @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  59. SELECT @errorCode = '0', @errorMsg = 'Cancelled Transaction Synchronized Successfully'
  60. EXEC proc_cancelTran @flag = 'cancelTpTxn', @controlNo = @controlNo, @user = @user
  61. UPDATE dbo.tpTxnList SET status = 'Cancel' WHERE controlNo = @controlNoEncrypted
  62. END
  63. ELSE IF @status = 'UNPAID'
  64. BEGIN
  65. SELECT @errorCode = '0', @errorMsg = 'Post Transaction Synchronized Successfully'
  66. UPDATE remitTran SET
  67. payStatus = 'Post'
  68. ,approvedBy = ISNULL(approvedBy, @user)
  69. ,approvedDate = ISNULL(approvedDate, DBO.FNADateFormatTZ(GETDATE(), @user))
  70. ,approvedDateLocal = ISNULL(approvedDateLocal, GETDATE())
  71. WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  72. INSERT INTO tpTxnList(tranId, controlNo, transferredDate, pAgent, status)
  73. SELECT id, controlNo, @syncDate, @gblPayAgentId, 'Unpaid' FROM dbo.remitTran WITH(NOLOCK) WHERE controlNo = dbo.FNAEncryptString(@controlNo)
  74. END
  75. EXEC proc_errorHandler @errorCode, @errorMsg, @controlNo
  76. RETURN
  77. END
  78. IF @flag = 'listForSync'
  79. BEGIN
  80. ----sync with global ime bank
  81. SELECT top 60 id,Controlno = dbo.fnaDecryptstring(Controlno) ,convert(varchar,createddate ,101) createddate
  82. FROM remittran(NOLOCK)
  83. WHERE paystatus='post' and pAgent = 1056
  84. and approveddate < dateadd(Hour,-3,getdate())
  85. order by newid()
  86. RETURN
  87. END
  88. --accountNo
  89. IF @flag = 'txnDetail'
  90. BEGIN
  91. SELECT
  92. controlNo = dbo.FNADecryptString(controlNo) --M-20
  93. ,benefName = rt.receiverName --M-50
  94. ,benefAdddress = CAST( ISNULL(tr.ADDRESS,ISNULL(tr.city,'Kathmandu')) AS VARCHAR (95)) --M-100
  95. ,benefTel = tr.homePhone --O-50
  96. ,benefMobile = tr.mobile --O-30
  97. ,benefIdType = tr.idType
  98. ,benefAccIdNo = CASE
  99. WHEN rt.paymentMethod = 'CASH PAYMENT' THEN ISNULL(tr.idType, 'ReceiverID') + ':' + ISNULL(tr.idNumber , '0')
  100. ELSE rt.accountNo
  101. END --M-30
  102. ,senderName = rt.senderName --M-50
  103. ,senderAddress = CAST(ts.address AS VARCHAR(90)) --M-100
  104. ,senderTel = COALESCE(ts.homePhone,ts.mobile)--,'01231231123') --O-30
  105. ,senderMobile = COALESCE(ts.mobile,ts.homePhone)--,'9876767676') --O-30
  106. ,senderIdType = ISNULL(ts.idType,'Passport') --M-25
  107. ,senderIdNo = ts.idNumber --M-25
  108. ,purpose = rt.purposeOfRemit --O-25
  109. ,remitType = CASE WHEN rt.paymentMethod = 'CASH PAYMENT' THEN 'ID' ELSE 'BANK' END --M-4
  110. ,payingBankCd = ''
  111. ,payingBranchCd = '' --M-6
  112. ,PayingBankBranchCd = rt.externalBankCode
  113. ,rCurrency =rt.collCurr --M-4
  114. ,localAmount = ROUND(rt.pAmt/rt.pCurrCostRate, 4) --M-Decimal(10, 2)
  115. ,amount = rt.pAmt --M-Decimal(10, 2)
  116. ,serviceCharge = '' --M-Decimal(10, 2)
  117. ,rCommission = ''
  118. ,exchangeRate = rt.pCurrCostRate --M-Decimal(10, 2)
  119. ,refNo = ts.idNumber --rt.id --O-20
  120. ,remarks = CASE
  121. WHEN rt.paymentMethod = 'CASH PAYMENT' THEN rt.pMessage
  122. ELSE ISNULL(rt.pBankName, '') + ISNULL(', ' + rt.pBankBranchName, '')
  123. END --O-100
  124. ,[source] = rt.sourceOfFund --M-25
  125. ,HitApi = CASE WHEN rt.tranStatus = 'Hold' AND rt.paymentMethod = 'BANK DEPOSIT' THEN dbo.FNAGetAPIStatus(1023) ELSE 0 END
  126. ,newAccount = ISNULL(tr.isNewAc, 'N')
  127. ,customerDOB= CASE WHEN tr.isNewAc='Y' THEN ISNULL(CONVERT(char(10), ts.dob,126),'1980-01-01') ELSE ISNULL(CONVERT(char(10), ts.dob,126),'') END
  128. FROM remitTranTemp rt WITH(NOLOCK)
  129. INNER JOIN tranSendersTemp ts WITH(NOLOCK) ON rt.id = ts.tranId
  130. INNER JOIN tranReceiversTemp tr WITH(NOLOCK) ON rt.id = tr.tranId
  131. WHERE rt.id = @id
  132. and rt.pagent= 1056
  133. RETURN
  134. END
  135. IF @flag = 'txnDetail-rp'
  136. BEGIN
  137. IF EXISTS(
  138. SELECT 'A'
  139. FROM remitTran rt WITH(NOLOCK)
  140. WHERE (rt.id = @id OR rt.holdTranId = @id)
  141. AND tranStatus = 'Payment' AND payStatus = 'Unpaid'
  142. AND rt.externalBankCode IS NULL and paymentMethod='BANK DEPOSIT'
  143. )
  144. BEGIN
  145. UPDATE rt set rt.externalBankCode = a.ExtCode
  146. FROM remitTran rt
  147. INNER JOIN AGENTMASTER A (NOLOCK) ON a.agentId = rt.pAgent
  148. WHERE (rt.id = @id OR rt.holdTranId = @id)
  149. AND tranStatus = 'Payment' AND payStatus = 'Unpaid'
  150. AND rt.externalBankCode IS NULL and paymentMethod='BANK DEPOSIT'
  151. END
  152. SELECT
  153. controlNo = dbo.FNADecryptString(controlNo) --M-20
  154. ,benefName = rt.receiverName --M-50
  155. ,benefAdddress = CAST( ISNULL(tr.ADDRESS,ISNULL(tr.city,'Kathmandu')) AS VARCHAR (95)) --M-100
  156. ,benefTel = tr.homePhone --O-50
  157. ,benefMobile = tr.mobile --O-30
  158. ,benefIdType = CASE
  159. WHEN tr.idType = 'National ID' THEN 'Citizenship No'
  160. WHEN tr.idType = 'Passport' THEN 'Passport No'
  161. WHEN tr.idType = 'Driving License' THEN 'Driving Licence No'
  162. ELSE 'Others'
  163. END
  164. ,benefAccIdNo = CASE
  165. WHEN rt.paymentMethod = 'CASH PAYMENT' THEN ISNULL(tr.idType, 'ReceiverID') + ':' + ISNULL(tr.idNumber , '0')
  166. ELSE rt.accountNo
  167. END --M-30
  168. ,senderName = rt.senderName --M-50
  169. ,senderAddress = ISNULL(CAST(ts.ADDRESS AS varchar(90)), 'Seoul') --M-100
  170. ,senderTel = COALESCE(ts.homePhone,ts.mobile)--,'01231231123') --O-30
  171. ,senderMobile = COALESCE(ts.mobile,ts.homePhone)--,'9876767676') --O-30
  172. ,senderIdType = CASE
  173. WHEN ts.idType = 'Alien Registration Card' THEN 'Work Permit'
  174. WHEN ts.idType IN ('National ID', 'Passport', 'Driving License') THEN ts.idType
  175. WHEN ts.idType IS NULL THEN 'Passport'
  176. ELSE 'Others'
  177. END
  178. ,senderIdNo = ts.idNumber --M-25
  179. ,purpose = CASE
  180. WHEN rt.purposeOfRemit = 'Family maintenance' THEN 'Family maintenance'
  181. WHEN rt.purposeOfRemit = 'Educational expenses' THEN 'Education'
  182. WHEN rt.purposeOfRemit = 'Medical Expenses' THEN 'Medical'
  183. WHEN rt.purposeOfRemit = 'Purchase of land / property' THEN 'Purchase of Fixed Assets'
  184. ELSE 'Others'
  185. END --O-25
  186. ,remitType = CASE WHEN rt.paymentMethod = 'CASH PAYMENT' THEN 'ID' ELSE 'BANK' END --M-4
  187. ,payingBankCd = ''
  188. ,payingBranchCd = '' --M-6
  189. ,PayingBankBranchCd = CASE WHEN paymentMethod ='CASH PAYMENT' then '0' else isnull(rt.externalBankCode,'14') end
  190. ,rCurrency = 'USD' --rt.collCurr --M-4
  191. ,localAmount = ROUND(rt.pAmt/rt.pCurrCostRate, 4) --rt.tAmt --M-Decimal(10, 2)
  192. --,localAmount = ROUND(rt.pAmt/104.21, 4) --rt.tAmt --M-Decimal(10, 2)
  193. ,amount = ROUND(rt.pAmt, 0) --M-Decimal(10, 2)
  194. ,serviceCharge = '' --rt.serviceCharge --M-Decimal(10, 2)
  195. ,rCommission = '' --rt.pAgentComm
  196. --,exchangeRate = 104.21 --rt.customerRate --M-Decimal(10, 2)
  197. ,exchangeRate = ROUND(rt.pCurrCostRate, 4) --rt.customerRate --M-Decimal(10, 2)
  198. ,refNo = ts.idNumber--rt.id --O-20
  199. ,remarks = rt.pMessage --O-100
  200. ,[source] = CASE
  201. WHEN rt.sourceOfFund = 'Lottery' THEN 'Lottery'
  202. WHEN rt.sourceOfFund = 'Loan from bank' THEN 'Loan'
  203. WHEN rt.sourceOfFund = 'Salary / Wages' THEN 'Salary savings'
  204. ELSE 'Others'
  205. END --M-25
  206. ,HitApi = CASE WHEN rt.tranStatus = 'Payment' AND rt.paymentMethod = 'BANK DEPOSIT' THEN 1 ELSE 0 END
  207. --,newAccount = ISNULL(tr.isNewAc, 'N')
  208. ,newAccount = 'N'
  209. ,customerDOB= CASE WHEN tr.isNewAc='Y' THEN ISNULL(CONVERT(char(10), ts.dob,126),'1980-01-01') ELSE ISNULL(CONVERT(char(10), ts.dob,126),'') END
  210. ,checkAccount = CASE WHEN rt.holdTranId IS NULL THEN 'Y' ELSE 'N' END
  211. FROM remitTran rt WITH(NOLOCK)
  212. INNER JOIN tranSenders ts WITH(NOLOCK) ON rt.id = ts.tranId
  213. INNER JOIN tranReceivers tr WITH(NOLOCK) ON rt.id = tr.tranId
  214. WHERE (rt.id = @id OR rt.holdTranId = @id)
  215. AND tranStatus = 'Payment' AND payStatus = 'Unpaid'
  216. and pAgent = 1056
  217. RETURN
  218. END
  219. IF @flag = 'approve'
  220. BEGIN
  221. DECLARE
  222. @cAmt MONEY
  223. ,@userId INT
  224. ,@createdBy VARCHAR(50)
  225. ,@sBranch INT
  226. ,@pAgent INT
  227. ,@invicePrintMethod VARCHAR(50)
  228. ,@parentId INT
  229. ,@tranStatus VARCHAR(50)
  230. SELECT
  231. @cAmt = cAmt
  232. ,@userId = au.userId
  233. ,@createdBy = r.createdBy
  234. ,@controlNo = dbo.FNADecryptString(controlNo)
  235. ,@controlNoEncrypted = controlNo
  236. ,@sBranch = sBranch
  237. ,@tranStatus = r.transtatus
  238. ,@rCountry = r.pCountry
  239. ,@pAgent = case when r.pCountry='Nepal' and r.paymentMethod='CASH PAYMENT' then isnull(r.pAgent,1056) else r.pAgent end
  240. FROM remitTranTemp r WITH(NOLOCK)
  241. INNER JOIN applicationUsers au ON r.createdBy = au.userName
  242. WHERE r.id = @id
  243. SELECT @parentId = parentId FROM agentMaster WITH(NOLOCK) WHERE agentId = @sBranch
  244. SELECT
  245. @invicePrintMethod = invoicePrintMethod
  246. FROM agentMaster A WITH(NOLOCK)
  247. INNER JOIN agentBusinessFunction B WITH(NOLOCK) ON A.agentId = B.agentId
  248. WHERE A.agentId = @parentId
  249. SELECT top 1 @pCountryId = countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = @rCountry
  250. SELECT @pBranch=sBranch,@pAgent = sAgent,@pAgentName = sAgentName,@psAgent=sSuperAgent
  251. FROM DBO.FNAGetBranchFullDetails(@pAgent)
  252. BEGIN TRANSACTION
  253. UPDATE remitTranTemp SET
  254. transtatus = CASE @tranStatus
  255. WHEN 'Hold' THEN 'Payment'
  256. WHEN 'Compliance Hold' THEN 'Compliance'
  257. WHEN 'OFAC Hold' THEN 'OFAC'
  258. WHEN 'OFAC/Compliance Hold' THEN 'OFAC/Compliance'
  259. ELSE 'Payment'
  260. END
  261. ,payStatus = CASE WHEN @tranStatus = 'Hold' AND dbo.FNAGetAPIStatus(1023) = 1 THEN 'Post' ELSE payStatus END
  262. ,approvedBy = @user
  263. ,approvedDate = dbo.FNADateFormatTZ(GETDATE(), @user)
  264. ,approvedDateLocal = GETDATE()
  265. ,pAgentComm = (SELECT amount FROM dbo.FNAGetPayComm
  266. (sBranch,(SELECT countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = sCountry),
  267. NULL, @psAgent, @pCountryId, null, @pBranch, sAgentCommCurrency
  268. ,(select top 1 serviceTypeId from servicetypemaster(nolock) where typeTitle = paymentMethod)
  269. , cAmt, pAmt, serviceCharge, NULL, NULL
  270. ))
  271. ,pAgentCommCurrency = sAgentCommCurrency
  272. ,pAgent = @pAgent
  273. ,pAgentName = @pAgentName
  274. WHERE id = @id
  275. INSERT INTO PinQueueList(ICN)
  276. SELECT @controlNoEncrypted
  277. DECLARE @tranIdNew BIGINT
  278. EXEC proc_remitTranTempToRemitMain @id
  279. IF @@TRANCOUNT > 0
  280. COMMIT TRANSACTION
  281. IF @invicePrintMethod = 'aa'
  282. EXEC proc_errorHandler 11, 'Transaction Approved Successfully', @controlNo
  283. ELSE
  284. EXEC proc_errorHandler 0, 'Transaction Approved Successfully', @controlNo
  285. RETURN
  286. RETURN
  287. END
  288. IF @flag = 'rp-re'
  289. BEGIN
  290. SELECT @controlNo = dbo.FNADecryptString(controlNo), @controlNoEncrypted = controlNo ,@rCountry = pCountry
  291. ,@pAgent = pAgent
  292. FROM dbo.remitTran WITH(NOLOCK) WHERE id = @id OR holdTranId = @id
  293. SELECT top 1 @pCountryId = countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = @rCountry
  294. SELECT @pBranch=sBranch,@pAgent = sAgent,@pAgentName = sAgentName,@psAgent=sSuperAgent
  295. FROM DBO.FNAGetBranchFullDetails(@pAgent)
  296. BEGIN TRANSACTION
  297. IF @errorCode = '0' OR @tpErrorCode = 'R900'
  298. BEGIN
  299. INSERT INTO tpTxnList(tranId, controlNo, transferredDate, pAgent, status)
  300. SELECT @id, @controlNoEncrypted, GETDATE(), @gblPayAgentId, 'Unpaid'
  301. UPDATE remitTran SET
  302. payStatus = 'Post'
  303. ,pAgentComm = (SELECT amount FROM dbo.FNAGetPayComm
  304. (sBranch,(SELECT countryId FROM countryMaster WITH(NOLOCK) WHERE countryName = sCountry),
  305. NULL, @psAgent, @pCountryId, null, @pBranch, sAgentCommCurrency
  306. ,(select top 1 serviceTypeId from servicetypemaster(nolock) where typeTitle = paymentMethod)
  307. , cAmt, pAmt, serviceCharge, NULL, NULL
  308. ))
  309. ,pAgentCommCurrency = sAgentCommCurrency
  310. ,pAgent = @pAgent
  311. ,pAgentName = @pAgentName
  312. ,postedBy = @user
  313. ,postedDate = GETDATE()
  314. WHERE id = @id OR holdTranId = @id
  315. END
  316. IF @@TRANCOUNT > 0
  317. COMMIT TRANSACTION
  318. IF @errorCode = '0'
  319. SELECT 0 errorCode, 'Transaction ' + @controlNo + ' Re-processed Successfully' msg, @id id
  320. ELSE IF @msg = 'Remit Already Exists' OR @tpErrorCode = 'R900'
  321. SELECT 0 errorCode, 'Transaction ' + @controlNo + ' already existed in Global IME Bank Remit. Marked as post in our system.' msg, @id id
  322. ELSE
  323. EXEC proc_errorHandler @errorCode, @msg, @id
  324. RETURN
  325. END
  326. IF @flag = 'c'
  327. BEGIN
  328. INSERT INTO thirdPartyTxnLogS(provider,msg,createdBy,createdDate,transferNumber)
  329. SELECT @gblPayAgentId,'cancel',@user,GETDATE(),dbo.FNAEncryptString(@controlNo)
  330. EXEC proc_errorHandler 0, 'Transaction has been cancelled Successfully', null
  331. RETURN
  332. END
  333. IF @flag = 'sps'
  334. BEGIN
  335. DECLARE @PinList TABLE(pin VARCHAR(50), pinStatus VARCHAR(50))
  336. INSERT @PinList
  337. SELECT
  338. dbo.FNAEncryptString(p.value('@pin','VARCHAR(50)')) as cn
  339. ,p.value('@status','VARCHAR(50)')
  340. FROM @xmlAPI.nodes('/root/row') as tmp(p)
  341. WHERE ISNUMERIC(p.value('@pin','VARCHAR(50)')) = 1
  342. UPDATE r SET
  343. tranStatus = 'Paid'
  344. ,payStatus = 'Paid'
  345. ,lockStatus = 'unlocked'
  346. ,paidBy = @user
  347. ,paidDate = ISNULL(paidDate, GETDATE())
  348. ,paidDateLocal = ISNULL(paidDateLocal, DBO.FNADateFormatTZ(GETDATE(), @user))
  349. FROM remitTran r WITH(NOLOCK)
  350. INNER JOIN @PinList p ON r.controlNo = p.pin
  351. AND r.pAgent = @gblPayAgentId
  352. AND r.payStatus <> 'Paid'
  353. AND p.pinStatus = 'Paid'
  354. UPDATE dbo.tpTxnList
  355. SET status = 'Paid'
  356. FROM dbo.tpTxnList tp
  357. INNER JOIN @PinList p ON tp.controlNo = p.pin
  358. WHERE p.pinStatus = 'Paid'
  359. EXEC proc_errorHandler 0, 'Paid Transaction(s) Synchronized Successfully', null
  360. RETURN
  361. END
  362. IF @flag = 's'
  363. BEGIN
  364. SELECT
  365. id = r.id
  366. ,senderName = sen.firstName + ISNULL(' ' + sen.middleName, '') + ISNULL(' ' + sen.lastName1, '') + ISNULL(' ' + sen.lastName2, '')
  367. ,receiverName = rec.firstName + ISNULL(' ' + rec.middleName, '') + ISNULL(' ' + rec.lastName1, '') + ISNULL(' ' + rec.lastName2, '')
  368. ,controlNo = dbo.FNADecryptString(r.controlNo)
  369. ,pin = dbo.FNADecryptString(r.controlNo)
  370. ,pAmt = r.pAmt
  371. ,createdDate = CONVERT(VARCHAR, r.createdDate, 101)
  372. ,r.tranStatus
  373. ,r.payStatus
  374. FROM remitTran r WITH(NOLOCK)
  375. LEFT JOIN tranSenders sen WITH(NOLOCK) ON r.id = sen.tranId
  376. LEFT JOIN tranReceivers rec WITH(NOLOCK) ON r.id = rec.tranId
  377. WHERE r.approvedDate BETWEEN @syncDate AND @syncDate + ' 23:59:59'
  378. AND r.pAgent = @gblPayAgentId
  379. RETURN
  380. END
  381. IF @flag = 'get-detail'
  382. BEGIN
  383. SELECT RT.receiverName, dbo.decryptDb(RT.controlNo) controlNo, RT.accountNo
  384. FROM dbo.remitTran RT (NOLOCK)
  385. WHERE id = @id
  386. RETURN
  387. END
  388. IF @flag = 'updateTT'
  389. BEGIN
  390. SET @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  391. BEGIN TRAN
  392. IF NOT EXISTS(SELECT 'X' FROM dbo.tranModifyLog WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted AND message = 'NAME AND ACCOUNT NUMBER DIFFERS')
  393. BEGIN
  394. INSERT INTO dbo.tranModifyLog(controlNo, message, createdBy, createdDate)
  395. SELECT @controlNoEncrypted, 'NAME AND ACCOUNT NUMBER DIFFERS', 'system', GETDATE()
  396. END
  397. COMMIT TRAN
  398. EXEC dbo.proc_errorHandler 0, 'NAME AND ACCOUNT NUMBER DIFFERS', NULL
  399. END
  400. IF @flag = 'uaf'
  401. BEGIN
  402. DECLARE @tranId BIGINT
  403. SET @controlNoEncrypted = dbo.FNAEncryptString(@controlNo)
  404. SELECT @tranId = id FROM dbo.remitTran WITH(NOLOCK) WHERE controlNo = @controlNoEncrypted
  405. UPDATE dbo.tranReceivers SET isNewAc = 'Y' WHERE tranId = @tranId
  406. EXEC dbo.proc_errorHandler 0, 'Is New Account flag Updated to Y', NULL
  407. END
  408. END TRY
  409. BEGIN CATCH
  410. IF @@TRANCOUNT > 0
  411. ROLLBACK TRANSACTION
  412. SELECT 1 error_code, ERROR_MESSAGE() mes, ERROR_LINE() id
  413. INSERT INTO dbErrorLog(spName, flag, errorMsg, errorLine, createdBy, createdDate)
  414. SELECT ERROR_PROCEDURE(), @flag, ERROR_MESSAGE(), ERROR_LINE(), @user, GETDATE()
  415. END CATCH
  416. GO