USP_DATAFORMTEMPLATE_ADD_STEWARDSHIPPLANSTEP
The save procedure used by the add dataform template "Stewardship Plan Step Add Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@PLANID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@STEPOWNERISINDIVIDUAL | bit | IN | Step owner is an individual |
@CATEGORYCODEID | uniqueidentifier | IN | Category |
@OBJECTIVE | nvarchar(100) | IN | Objective |
@TARGETDATE | datetime | IN | Target date |
@DATELOCKED | bit | IN | Locked |
@ACTUALDATE | datetime | IN | Actual date |
@STARTDATE | datetime | IN | Start date |
@ENDDATE | datetime | IN | End date |
@CONTACTMETHODCODEID | uniqueidentifier | IN | Contact method |
@CONSTITUENTID | uniqueidentifier | IN | Assigned to |
@ASSOCIATEDPLANS | xml | IN | Associated plans |
@TEMPLATE | nvarchar(100) | IN | Template |
@RECURSCODE | smallint | IN | Frequency |
@STATUSCODE | smallint | IN | Status |
@NEXTTARGETDATE | datetime | IN | Next target date |
@LINKTYPECODE | smallint | IN | Link type |
@BENEFITID | uniqueidentifier | IN | Benefit |
@EVENTID | uniqueidentifier | IN | Event |
@MAILINGID | uniqueidentifier | IN | Mailing |
@TARGETSTARTTIME | UDT_HOURMINUTE | IN | Target start time |
@TARGETENDTIME | UDT_HOURMINUTE | IN | Target end time |
@ISALLDAYEVENT | bit | IN | Is all day event |
@ACTUALSTARTTIME | UDT_HOURMINUTE | IN | Actual start time |
@ACTUALENDTIME | UDT_HOURMINUTE | IN | Actual end time |
@TIMEZONEENTRYID | uniqueidentifier | IN | Time zone |
@STEPPARTICIPANTS | xml | IN | Plan participants |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_STEWARDSHIPPLANSTEP
(
@ID uniqueidentifier output,
@PLANID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@STEPOWNERISINDIVIDUAL bit = null,
@CATEGORYCODEID uniqueidentifier = null,
@OBJECTIVE nvarchar(100) = null,
@TARGETDATE datetime = null,
@DATELOCKED bit = 0,
@ACTUALDATE datetime = null,
@STARTDATE datetime = null,
@ENDDATE datetime = null,
@CONTACTMETHODCODEID uniqueidentifier = null,
@CONSTITUENTID uniqueidentifier = null,
@ASSOCIATEDPLANS xml = null,
@TEMPLATE nvarchar(100) = null,
@RECURSCODE smallint = 0,
@STATUSCODE smallint = 0,
@NEXTTARGETDATE datetime = null,
@LINKTYPECODE smallint = 0,
@BENEFITID uniqueidentifier = null,
@EVENTID uniqueidentifier = null,
@MAILINGID uniqueidentifier = null,
@TARGETSTARTTIME dbo.UDT_HOURMINUTE = null,
@TARGETENDTIME dbo.UDT_HOURMINUTE = null,
@ISALLDAYEVENT bit = null,
@ACTUALSTARTTIME dbo.UDT_HOURMINUTE = null,
@ACTUALENDTIME dbo.UDT_HOURMINUTE = null,
@TIMEZONEENTRYID uniqueidentifier = null,
@STEPPARTICIPANTS xml = null
) as begin
set nocount on;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CHANGEDATE datetime;
set @CHANGEDATE = getdate();
begin try
insert into dbo.STEWARDSHIPPLANSTEP
(ID,
PLANID,
CATEGORYCODEID,
CONSTITUENTID,
CONTACTMETHODCODEID,
DATELOCKED,
ACTUALDATE,
ENDDATE,
BENEFITID,
EVENTID,
MAILINGID,
OBJECTIVE,
RECURSCODE,
STARTDATE,
STATUSCODE,
TARGETDATE,
TEMPLATE,
TARGETSTARTTIME,
TARGETENDTIME,
TIMEZONEENTRYID,
ISALLDAYEVENT,
ACTUALSTARTTIME,
ACTUALENDTIME,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED)
values
(@ID,
@PLANID,
@CATEGORYCODEID,
@CONSTITUENTID,
@CONTACTMETHODCODEID,
@DATELOCKED,
@ACTUALDATE,
@ENDDATE,
case when @LINKTYPECODE = 0 then @BENEFITID else null end,
case when @LINKTYPECODE = 1 then @EVENTID else null end,
case when @LINKTYPECODE = 2 then @MAILINGID else null end,
@OBJECTIVE,
@RECURSCODE,
@STARTDATE,
@STATUSCODE,
@TARGETDATE,
@TEMPLATE,
coalesce(@TARGETSTARTTIME,''),
coalesce(@TARGETENDTIME,''),
@TIMEZONEENTRYID,
case when @TARGETSTARTTIME is null then 1 when @TARGETSTARTTIME = '' then 1 else 0 end,
coalesce(@ACTUALSTARTTIME,''),
coalesce(@ACTUALENDTIME,''),
@CHANGEAGENTID,
@CHANGEAGENTID,
@CHANGEDATE,
@CHANGEDATE);
exec dbo.USP_STEWARDSHIPPLANSTEP_ASSOCIATEDPLANS_ADDFROMXML @ID, null, @ASSOCIATEDPLANS, @CHANGEAGENTID, @CHANGEDATE;
-- Add assigned to constituent as a plan steward, if it doesn't already exist
if not @CONSTITUENTID is null
exec dbo.USP_STEWARDSHIPPLANSTEWARD_ADD @PLANID, @CONSTITUENTID, @CHANGEAGENTID, @CHANGEDATE;
if not @STEPPARTICIPANTS is null
exec dbo.USP_STEWARDSHIPPLANSTEP_PARTICIPANTS_ADDFROMXML @ID, @STEPPARTICIPANTS, @CHANGEAGENTID, @CHANGEDATE;
-- Handle recursion if current step was set as complete
if not @NEXTTARGETDATE is null
exec dbo.USP_STEWARDSHIPPLAN_CLONERECURRINGCOMPLETEDSTEP @ID, @NEXTTARGETDATE, @CHANGEAGENTID, @CHANGEDATE;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch;
return 0;
end