USP_DATAFORMTEMPLATE_PROSPECTPLAN_ADD

The save procedure used by the add dataform template "Prospect Plan Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@PROSPECTID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@PROSPECTPLANTYPECODEID uniqueidentifier IN Plan type
@NARRATIVE nvarchar(1000) IN Narrative
@STEPS xml IN
@PROSPECTPLAN_NAME nvarchar(100) IN Plan name
@PROSPECTPLAN_PARTICIPANTS xml IN Plan participants
@SECONDARYFUNDRAISERS xml IN Secondary solicitors
@PRIMARYMANAGERFUNDRAISERID uniqueidentifier IN Primary manager
@SECONDARYMANAGERFUNDRAISERID uniqueidentifier IN Secondary manager
@SITES xml IN Sites
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@PRIMARYMANAGERDATEFROM datetime IN Start date
@SECONDARYMANAGERDATEFROM datetime IN Start date
@STARTDATE datetime IN Start date

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_PROSPECTPLAN_ADD 
(
  @ID uniqueidentifier = null output,
  @CHANGEAGENTID uniqueidentifier = null,
  @PROSPECTID uniqueidentifier,
  @PROSPECTPLANTYPECODEID uniqueidentifier,
  @NARRATIVE nvarchar(1000) = '',
  @STEPS xml = null,
  @PROSPECTPLAN_NAME nvarchar(100) = '',
  @PROSPECTPLAN_PARTICIPANTS xml = null,
  @SECONDARYFUNDRAISERS xml = null,
  @PRIMARYMANAGERFUNDRAISERID uniqueidentifier = null,
  @SECONDARYMANAGERFUNDRAISERID uniqueidentifier = null,
  @SITES xml = null,
  @CURRENTAPPUSERID uniqueidentifier = null,
  @PRIMARYMANAGERDATEFROM datetime = null,
  @SECONDARYMANAGERDATEFROM datetime = null,
  @STARTDATE datetime = 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 @BASECURRENCYID uniqueidentifier;
  set @BASECURRENCYID = dbo.UFN_APPUSER_GETBASECURRENCY(@CURRENTAPPUSERID);

  begin try
    insert into dbo.PROSPECTPLAN 
    (
      ID,
      PROSPECTID,
      PROSPECTPLANTYPECODEID,
      NARRATIVE,
      NAME,
      PRIMARYMANAGERFUNDRAISERID,
      PRIMARYMANAGERSTARTDATE,
      SECONDARYMANAGERFUNDRAISERID,
      SECONDARYMANAGERSTARTDATE,
      BASECURRENCYID,
      STARTDATE,
      ADDEDBYID,
      CHANGEDBYID
    ) 
    values (
      @ID,
      @PROSPECTID,
      @PROSPECTPLANTYPECODEID,
      @NARRATIVE,
      @PROSPECTPLAN_NAME,
      @PRIMARYMANAGERFUNDRAISERID,
      @PRIMARYMANAGERDATEFROM,
      @SECONDARYMANAGERFUNDRAISERID,
      @SECONDARYMANAGERDATEFROM,
      @BASECURRENCYID,
      @STARTDATE,
      @CHANGEAGENTID,
      @CHANGEAGENTID 
    );

    declare @CURRENTDATE datetime;
    set @CURRENTDATE = getdate();

    exec dbo.USP_PROSPECTPLANASSIGNEDALERT_SEND null, null, @ID

    exec dbo.USP_PROSPECTPLAN_GETSITES_ADDFROMXML @ID, @SITES, @CHANGEAGENTID, @CURRENTDATE;

    exec dbo.USP_PROSPECTPLAN_SECONDARYFUNDRAISERS_ADDFROMXML @ID, @SECONDARYFUNDRAISERS, @CHANGEAGENTID, @CURRENTDATE;

    exec dbo.USP_PROSPECTPLAN_PARTICIPANTS_ADDFROMXML @ID, @PROSPECTPLAN_PARTICIPANTS, @CHANGEAGENTID;

    exec dbo.USP_PROSPECTPLAN_STEPSWITHCHILDREN_UPDATEFROMXML @ID, @STEPS, @CHANGEAGENTID;                          
  end try
  begin catch
    exec dbo.USP_RAISE_ERROR;
    return 1;
  end catch

  return 0;
end