USP_DATAFORMTEMPLATE_PROSPECTMANAGER_EDITSAVE
The save procedure used by the edit dataform template "Prospect Manager Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@PROSPECTMANAGERFUNDRAISERID | uniqueidentifier | IN | Prospect manager |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_PROSPECTMANAGER_EDITSAVE (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@PROSPECTMANAGERFUNDRAISERID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier = null
) as
set nocount on;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
begin try
declare @PREVIOUSMANAGERFUNDRAISERID uniqueidentifier;
if exists (select 1 from dbo.PROSPECT where ID = @ID) begin
select @PREVIOUSMANAGERFUNDRAISERID = PROSPECTMANAGERFUNDRAISERID from dbo.PROSPECT where ID = @ID;
update dbo.PROSPECT set
PROSPECTMANAGERFUNDRAISERID = @PROSPECTMANAGERFUNDRAISERID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
ID = @ID;
end
else begin
select @PREVIOUSMANAGERFUNDRAISERID = CONSTITUENTID from dbo.APPUSER where APPUSER.ID = @CURRENTAPPUSERID;
insert into dbo.PROSPECT
(
ID,
PROSPECTMANAGERFUNDRAISERID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED
)
values
(
@ID,
@PROSPECTMANAGERFUNDRAISERID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
exec dbo.USP_PROSPECTASSIGNEDALERT_SEND @PREVIOUSMANAGERFUNDRAISERID, @ID;
update dbo.INTERACTION set
FUNDRAISERID = @PROSPECTMANAGERFUNDRAISERID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
from
dbo.INTERACTION I
inner join dbo.PROSPECTPLAN PP on PP.ID = I.PROSPECTPLANID
left outer join dbo.PLANOUTLINESTEP SI on SI.ID=I.PLANOUTLINESTEPID
where
I.FUNDRAISERID is null
and SI.FUNDRAISERROLECODE = 0
and PP.PROSPECTID = @ID
and I.COMPLETED = 0;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;