USP_GLOBALCHANGE_PAPERLESSMANDATESCANCELCOMPLETEDREVENUE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CHANGEAGENTID | uniqueidentifier | IN | |
@SELECTIONID | uniqueidentifier | IN | |
@ASOF | datetime | IN | |
@NUMBERADDED | int | INOUT | |
@NUMBEREDITED | int | INOUT | |
@NUMBERDELETED | int | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_GLOBALCHANGE_PAPERLESSMANDATESCANCELCOMPLETEDREVENUE
(
@CHANGEAGENTID uniqueidentifier = null,
@SELECTIONID uniqueidentifier = null,
@ASOF as datetime = null,
@NUMBERADDED int = 0 output,
@NUMBEREDITED int = 0 output,
@NUMBERDELETED int = 0 output,
@CURRENTAPPUSERID uniqueidentifier = null
)
as
set nocount on;
set @NUMBERADDED = 0;
set @NUMBEREDITED = 0;
set @NUMBERDELETED = 0;
set @ASOF = null;
begin try
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CHANGEDATE datetime;
set @CHANGEDATE = getdate();
update REVENUESCHEDULEDIRECTDEBITPAYMENT
set SENDPMINSTRUCTION = 1,
PMINSTRUCTIONTOSENDCODE = 2,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CHANGEDATE
from dbo.REVENUESCHEDULEDIRECTDEBITPAYMENT
inner join dbo.FINANCIALTRANSACTION on FINANCIALTRANSACTION.ID = REVENUESCHEDULEDIRECTDEBITPAYMENT.ID
inner join dbo.REVENUESCHEDULE on REVENUESCHEDULE.ID = FINANCIALTRANSACTION.ID
inner join dbo.UFN_IDSETREADER_GETRESULTS_GUID(@SELECTIONID) as [SELECTION] on [SELECTION].ID = REVENUESCHEDULEDIRECTDEBITPAYMENT.ID
where REVENUESCHEDULEDIRECTDEBITPAYMENT.SENDPMINSTRUCTION = 0
and REVENUESCHEDULEDIRECTDEBITPAYMENT.PMINSTRUCTIONDATE_CANCEL is null
and REVENUESCHEDULEDIRECTDEBITPAYMENT.DDISOURCECODEID is not null
and
(
(FINANCIALTRANSACTION.TYPECODE in (1,15) and dbo.UFN_PLEDGE_GETBALANCE(FINANCIALTRANSACTION.ID) = 0)
or (FINANCIALTRANSACTION.TYPECODE = 2 and (REVENUESCHEDULE.STATUSCODE = 2 or
REVENUESCHEDULE.STATUSCODE = 3 or
REVENUESCHEDULE.STATUSCODE = 4))
)
and
(
dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1
or exists
(
select 1
from dbo.UFN_SITEID_MAPFROM_REVENUEID(REVENUESCHEDULEDIRECTDEBITPAYMENT.ID) REVSITES
where dbo.UFN_SECURITY_APPUSER_GRANTED_BUSINESSPROCESS_FORSITE(@CURRENTAPPUSERID, '3269A1D1-31CB-4D28-945C-B7623A3EFCCA', REVSITES.SITEID) = 1
)
)
and FINANCIALTRANSACTION.DELETEDON is null
set @NUMBEREDITED = @@ROWCOUNT;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;