USP_BANKACCOUNTDISBURSEMENTS_TRANSACTIONS_DELETE
Delete transactions linked to a disbursement
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@TRANSACTIONS | xml | IN | |
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_BANKACCOUNTDISBURSEMENTS_TRANSACTIONS_DELETE(
@TRANSACTIONS xml
,@ID uniqueidentifier
,@CHANGEAGENTID uniqueidentifier
)
as
begin try
declare @TempTbl table(
[TRANSACTIONID] uniqueidentifier
,[TYPECODE] tinyint
);
insert into @TempTbl select
T.[TRANSACTIONID]
,T.[TYPECODE]
from dbo.UFN_BANKACCOUNTDISBURSEMENTTRANSACTIONS_FROMITEMLISTXML(@TRANSACTIONS) as T
where T.[DELETE] != 0 AND T.[BANKACCOUNTTRANSACTIONID] = @ID ;
declare @TRANSACTIONID uniqueidentifier;
declare @TYPECODE tinyint;
declare TRANSACTIONS cursor forward_only read_only for
select
[TRANSACTIONID]
,[TYPECODE]
from @TempTbl;
open TRANSACTIONS;
fetch next from TRANSACTIONS into
@TRANSACTIONID,
@TYPECODE;
while @@fetch_status = 0
begin
if @TYPECODE = 101
exec dbo.USP_INVOICE_DELETE @TRANSACTIONID, @CHANGEAGENTID;
if @TYPECODE = 102
exec dbo.USP_CREDITMEMO_DELETE @TRANSACTIONID, @CHANGEAGENTID;
fetch next from TRANSACTIONS into
@TRANSACTIONID,
@TYPECODE;
end;
close TRANSACTIONS;
deallocate TRANSACTIONS;
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch