USP_GLOBALCHANGE_PAPERLESSMANDATEADVANCENOTICESENT
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CHANGEAGENTID | uniqueidentifier | IN | |
@SELECTIONID | uniqueidentifier | IN | |
@DATETYPE | tinyint | IN | |
@SPECIFICDATE | date | IN | |
@ASOF | datetime | IN | |
@NUMBERADDED | int | INOUT | |
@NUMBEREDITED | int | INOUT | |
@NUMBERDELETED | int | INOUT | |
@CURRENTAPPUSERID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_GLOBALCHANGE_PAPERLESSMANDATEADVANCENOTICESENT
(
@CHANGEAGENTID uniqueidentifier = null,
@SELECTIONID uniqueidentifier,
@DATETYPE tinyint = 1,
@SPECIFICDATE date = 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;
if @DATETYPE = 0
set @SPECIFICDATE = null;
if @DATETYPE = 1
set @SPECIFICDATE = getdate();
if @DATETYPE = 2 and @SPECIFICDATE is null
raiserror('You must specify a specific date.', 13, 1);
declare @CHANGEDATE datetime;
set @CHANGEDATE = getdate();
update REVENUESCHEDULEDIRECTDEBITPAYMENT
set PMADVANCENOTICESENTDATE = @SPECIFICDATE,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CHANGEDATE
from dbo.REVENUESCHEDULEDIRECTDEBITPAYMENT
inner join dbo.UFN_IDSETREADER_GETRESULTS_GUID(@SELECTIONID) as [SELECTION] on [SELECTION].ID = REVENUESCHEDULEDIRECTDEBITPAYMENT.ID
where not REVENUESCHEDULEDIRECTDEBITPAYMENT.DDISOURCECODEID is null
and (
(@SPECIFICDATE is null and REVENUESCHEDULEDIRECTDEBITPAYMENT.PMADVANCENOTICESENTDATE is not null)
or
(@SPECIFICDATE is not null and (REVENUESCHEDULEDIRECTDEBITPAYMENT.PMADVANCENOTICESENTDATE <> @SPECIFICDATE or REVENUESCHEDULEDIRECTDEBITPAYMENT.PMADVANCENOTICESENTDATE is null))
)
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
)
)
set @NUMBEREDITED = @@ROWCOUNT;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;