USP_RECORDOPERATION_RECEIPTINGPROCESSDONOTRERECEIPT
Executes the "Receipting Process: Do not ereceipt" record operation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | Input parameter indicating the ID of the record being updated. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the update. |
Definition
Copy
CREATE procedure dbo.USP_RECORDOPERATION_RECEIPTINGPROCESSDONOTRERECEIPT
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier
)
as
if ((coalesce((select top 1 RERECEIPTPAYMENTS from dbo.RECEIPTPREFERENCEINFO), 1)) = 1 or (coalesce((select top 1 SAMENUMBERONRERECEIPT from dbo.RECEIPTPREFERENCEINFO), 1) = 1))
begin try
--Cache current context information and set CONTEXT_INFO to @CHANGEAGENTID
declare @CONTEXTCACHE varbinary(128);
set @CONTEXTCACHE = CONTEXT_INFO();
set CONTEXT_INFO @CHANGEAGENTID;
--Resetting the NEEDSRERECEIPT to 0 on all transactions touched by this process
update RV set RV.NEEDSRERECEIPT = 0
from dbo.REVENUE_EXT RV
inner join dbo.REVENUERECEIPT RC on RV.ID = RC.REVENUEID
where RC.RECEIPTINGPROCESSSTATUSID = @ID and RV.NEEDSRERECEIPT = 1;
-- Deleting the ereceipt details if they exist
delete dbo.REVENUERECEIPTRERECEIPTDETAIL
from dbo.REVENUERECEIPTRERECEIPTDETAIL RD
inner join dbo.REVENUERECEIPT RR on RR.ID = RD.REVENUERECEIPTID
where RR.RECEIPTINGPROCESSSTATUSID = @ID
--Reset CONTEXT_INFO to previous value
if @CONTEXTCACHE is not null
set CONTEXT_INFO @CONTEXTCACHE;
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;