USP_DATAFORMTEMPLATE_ADD_MATCHEDSETTLEMENTDATE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | |
@SYSTEMTRANSACTIONID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@SETTLEMENTDATE | date | IN | |
@UNSETTLEDTRANSACTIONID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_MATCHEDSETTLEMENTDATE
(
@ID uniqueidentifier = null output,
@SYSTEMTRANSACTIONID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@SETTLEMENTDATE date,
@UNSETTLEDTRANSACTIONID uniqueidentifier = null
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if exists (select 1 from dbo.[CREDITCARDPAYMENTMETHODDETAIL] where [ID] = @SYSTEMTRANSACTIONID)
update dbo.[CREDITCARDPAYMENTMETHODDETAIL]
set
[SETTLEMENTTYPECODE] = 1,
[SETTLEMENTDATE] = @SETTLEMENTDATE,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @SYSTEMTRANSACTIONID;
else if exists (select 1 from dbo.[CREDITPAYMENT] where [ID] = @SYSTEMTRANSACTIONID)
update dbo.[CREDITPAYMENT]
set
[SETTLEMENTTYPECODE] = 1,
[SETTLEMENTDATE] = @SETTLEMENTDATE,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @SYSTEMTRANSACTIONID;
update dbo.PROCESSORTRANSACTIONSETTLEMENTIMPORTROW set
STATUSCODE = case STATUSCODE
when 0 then 1
else STATUSCODE
end,
DATABASETRANSACTIONID = @SYSTEMTRANSACTIONID
from
dbo.UNSETTLEDCREDITCARDTRANSACTION U
inner join dbo.PROCESSORTRANSACTIONSETTLEMENTIMPORTROW IR on U.PROCESSORTRANSACTIONSETTLEMENTIMPORTROWID = IR.ID
where
U.ID = @UNSETTLEDTRANSACTIONID
if @UNSETTLEDTRANSACTIONID is not null
exec USP_UNSETTLEDCREDITCARDTRANSACTION_DELETEBYID_WITHCHANGEAGENTID @UNSETTLEDTRANSACTIONID, @CHANGEAGENTID
return 0;