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.
121 lines
2.1 KiB
121 lines
2.1 KiB
ALTER PROCEDURE PROC_AUTO_APPROVE_TXN_JOB
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
|
|
BEGIN TRY
|
|
IF OBJECT_ID('tempdb..#tempTable') IS NOT NULL
|
|
DROP TABLE #tempTable;
|
|
|
|
DECLARE @MinAmt MONEY
|
|
DECLARE @tranId BIGINT
|
|
,@remarks VARCHAR(100)
|
|
,@controlNo VARCHAR(200)
|
|
|
|
SELECT @MinAmt = detailDesc
|
|
FROM staticDataValue
|
|
WHERE typeId = '10200'
|
|
AND valueId = '11486'
|
|
|
|
CREATE TABLE #tempTable (
|
|
id BIGINT
|
|
,controlNo VARCHAR(100)
|
|
,amt MONEY
|
|
,rowId INT
|
|
);
|
|
|
|
INSERT INTO #tempTable
|
|
SELECT id
|
|
,controlNo
|
|
,cAmt
|
|
,rowId = 0
|
|
FROM remitTranTemp
|
|
WHERE tranStatus = 'Hold'
|
|
AND payStatus = 'Unpaid'
|
|
AND approvedBy IS NULL
|
|
AND tranType IN (
|
|
'M'
|
|
,'I'
|
|
)
|
|
AND verifiedBy IS NOT NULL
|
|
AND verifiedDate IS NOT NULL
|
|
AND ISNULL(sRouteId, 0) IN (
|
|
0
|
|
,'M'
|
|
)
|
|
AND cAmt <= @MinAmt
|
|
|
|
WHILE EXISTS (
|
|
SELECT TOP 1 1
|
|
FROM #tempTable
|
|
WHERE rowId = 0
|
|
)
|
|
BEGIN
|
|
SELECT @tranId = id
|
|
,@controlNo = controlNo
|
|
FROM #tempTable(NOLOCK)
|
|
WHERE rowId = 0
|
|
|
|
CREATE TABLE #tempApprove (
|
|
errorCode VARCHAR(10)
|
|
,Msg VARCHAR(MAX)
|
|
,Id VARCHAR(50)
|
|
)
|
|
|
|
INSERT INTO #tempApprove (
|
|
errorCode
|
|
,Msg
|
|
,Id
|
|
)
|
|
EXEC proc_ApproveHoldedTXN @flag = 'approve'
|
|
,@user = 'SYSTEM'
|
|
,@id = @tranId
|
|
|
|
SET @remarks = 'Auto approved txn by job having less than ' + CONVERT(VARCHAR(50), @MinAmt) + ' GBP'
|
|
|
|
IF EXISTS (
|
|
SELECT *
|
|
FROM #tempApprove
|
|
WHERE errorCode = 0
|
|
)
|
|
BEGIN
|
|
INSERT INTO tranModifyLog (
|
|
tranId
|
|
,controlNo
|
|
,message
|
|
,createdBy
|
|
,createdDate
|
|
,MsgType
|
|
)
|
|
SELECT @tranId
|
|
,@controlNo
|
|
,@remarks
|
|
,'SYSTEM'
|
|
,GETDATE()
|
|
,'Auto Approved Transaction'
|
|
|
|
EXEC JobHistoryRecord @flag = 'i'
|
|
,@job_name = 'PROC_AUTO_APPROVE_TXN_JOB'
|
|
,@job_remarks = 'Auto Approved Txn'
|
|
,@job_user = 'SYSTEM'
|
|
END
|
|
|
|
DROP TABLE #tempApprove
|
|
|
|
UPDATE #temptable
|
|
SET rowId = 1
|
|
WHERE id = @tranId
|
|
END
|
|
END TRY
|
|
|
|
BEGIN CATCH
|
|
DECLARE @errorMessage VARCHAR(MAX)
|
|
|
|
SET @errorMessage = ERROR_MESSAGE()
|
|
|
|
EXEC proc_errorHandler 1
|
|
,@errorMessage
|
|
,NULL
|
|
END CATCH
|
|
END;
|