USP_DATAFORMTEMPLATE_ADD_DECEASEDFINDER

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

Parameters

Parameter Parameter Type Mode Description
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@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.
@NAME nvarchar(150) IN Name
@DESCRIPTION nvarchar(250) IN Description
@SITEID uniqueidentifier IN Site
@PRIMARYCONTACTNAME nvarchar(250) IN Name
@PRIMARYCONTACTEMAIL UDT_EMAILADDRESS IN Email address
@PRIMARYCONTACTPHONE nvarchar(20) IN Phone number
@ALTERNATECONTACTNAME nvarchar(250) IN Name
@ALTERNATECONTACTEMAIL UDT_EMAILADDRESS IN Email address
@ALTERNATECONTACTPHONE nvarchar(20) IN Phone number
@PRIMARYCONTACTTITLECODEID uniqueidentifier IN
@CONTACTJOBTITLE nvarchar(50) IN

Definition

Copy


          CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_DECEASEDFINDER
          (
            @CURRENTAPPUSERID uniqueidentifier,
            @ID uniqueidentifier = null output,
            @CHANGEAGENTID uniqueidentifier = null,    
            @NAME nvarchar(150) = null,
            @DESCRIPTION nvarchar(250) = null,
            @SITEID uniqueidentifier = null,
            @PRIMARYCONTACTNAME nvarchar(250) = null,
            @PRIMARYCONTACTEMAIL dbo.UDT_EMAILADDRESS = null,
            @PRIMARYCONTACTPHONE nvarchar(20) = null,
            @ALTERNATECONTACTNAME nvarchar(250) = null,
            @ALTERNATECONTACTEMAIL dbo.UDT_EMAILADDRESS = null,
            @ALTERNATECONTACTPHONE nvarchar(20) = null,
            @PRIMARYCONTACTTITLECODEID uniqueidentifier = null,
            @CONTACTJOBTITLE nvarchar(50) = null
          )
          as
            set nocount on;

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

            if @ID is null
              set @ID = newid();

            if @CHANGEAGENTID is null    
              exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

            if (@SITEID is not null)
              begin
                if dbo.UFN_SITEALLOWEDFORUSER(@CURRENTAPPUSERID, @SITEID) = 0 
                  begin
                    raiserror ('ERR_SITE_NOACCESS',13,1);
                    return 1;
                  end
              end

            begin try

              -- Create batch for processing

              declare @BATCHID uniqueidentifier;
              declare @BATCHNAME nvarchar(100);
              declare @BATCHDESCRIPTION nvarchar(250);
              declare @COUNT int;

              select @COUNT = COUNT(ID) from dbo.BATCHTEMPLATE where BATCHTYPECATALOGID = 'CAE84EC7-C986-43CF-ABE1-2974A91A6EA8'

              if @COUNT = 0
                begin
                  raiserror('BBERR_TEMPLATE_DOESNOT_EXIST',13,1)
                  return
                end

              set @BATCHNAME = @NAME + ' - ' + convert(nvarchar(8), getdate(), 112) + replace(convert(nvarchar(8), getdate(), 108), ':', '');
              set @BATCHDESCRIPTION = 'Batch created by ' + @NAME + ' DeceasedRecordFinder process.';
              exec dbo.USP_DATAFORMTEMPLATE_ADD_BATCH2 @BATCHID output, @CURRENTAPPUSERID, null, @BATCHDESCRIPTION, null, 0, 0, 'B64A420F-D8BD-4CC5-951E-FB89ACB800D9', null, @CHANGEAGENTID;

              insert into dbo.DECEASEDFINDER
              (
                ID,
                NAME,
                DESCRIPTION,
                SITEID,
                BATCHID,
                BATCHAPPUSERID,
                PRIMARYCONTACTNAME,
                PRIMARYCONTACTEMAIL,
                PRIMARYCONTACTPHONE,
                ALTERNATECONTACTNAME,
                ALTERNATECONTACTEMAIL,
                ALTERNATECONTACTPHONE,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED,
                PRIMARYCONTACTTITLECODEID,
                CONTACTJOBTITLE
              )
              values
              (
                @ID,
                @NAME,
                @DESCRIPTION,
                @SITEID,
                @BATCHID,
                @CURRENTAPPUSERID,
                @PRIMARYCONTACTNAME,
                @PRIMARYCONTACTEMAIL,
                @PRIMARYCONTACTPHONE,
                @ALTERNATECONTACTNAME,
                @ALTERNATECONTACTEMAIL,
                @ALTERNATECONTACTPHONE,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE,
                @PRIMARYCONTACTTITLECODEID,
                @CONTACTJOBTITLE
              );

              -- Create file row

              insert into dbo.DECEASEDFINDERFILE
              (
            ID,
                REQUESTFILE
              )
              values
              (
                @ID,
                null
              );

              -- Create the sub-processes

              declare @DECEASEDFINDERSUBMITPROCESSID uniqueidentifier;
              set @DECEASEDFINDERSUBMITPROCESSID = newID();
              declare @ADDRESSINCLUDECODE tinyint;
              set @ADDRESSINCLUDECODE = 1;

              insert into dbo.DECEASEDFINDERSUBMITPROCESS
              (
                ID,
                DECEASEDFINDERID,
                ADDRESSINCLUDECODE,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED
              )
              values
              (
                @DECEASEDFINDERSUBMITPROCESSID,
                @ID,
                @ADDRESSINCLUDECODE,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE
              );

              insert into dbo.DECEASEDFINDERRESUBMITPROCESS
              (
                ID,
                DECEASEDFINDERID,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED
              )
              values
              (
                newID(),
                @ID,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE
              );

              insert into dbo.DECEASEDFINDERGETPROCESS
              (
                ID,
                DECEASEDFINDERID,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED
              )
              values
              (
                newID(),
                @ID,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE
              );

              exec dbo.USP_BUSINESSPROCESSINSTANCE_ADD @CHANGEAGENTID = @CHANGEAGENTID
                                  @BUSINESSPROCESSCATALOGID = '18F4FBE4-8AFB-4FFE-84E1-F1FC59948775'
                                  @BUSINESSPROCESSPARAMETERSETID = @DECEASEDFINDERSUBMITPROCESSID
                                  @OWNERID = @CURRENTAPPUSERID;

              declare @DECEASEDFINDERCREATEPROCESSID uniqueidentifier;
              set @DECEASEDFINDERCREATEPROCESSID = newID();

              insert into dbo.DECEASEDFINDERCREATEPROCESS
              (
                ID,
                DECEASEDFINDERID,
                ADDRESSINCLUDECODE,
                ADDEDBYID,
                CHANGEDBYID,
                DATEADDED,
                DATECHANGED
              )
              values
              (
                @DECEASEDFINDERCREATEPROCESSID,
                @ID,
                @ADDRESSINCLUDECODE,
                @CHANGEAGENTID,
                @CHANGEAGENTID,
                @CURRENTDATE,
                @CURRENTDATE
              );

              exec dbo.USP_BUSINESSPROCESSINSTANCE_ADD @CHANGEAGENTID = @CHANGEAGENTID
                                  @BUSINESSPROCESSCATALOGID = '89462a7a-835e-4843-a63a-e34f883d68fc'
                                  @BUSINESSPROCESSPARAMETERSETID = @DECEASEDFINDERCREATEPROCESSID
                                  @OWNERID = @CURRENTAPPUSERID;

            end try
            begin catch
              exec dbo.USP_RAISE_ERROR;
              return 1;
            end catch

            return 0;