USP_DELETE_PROSPECTSEGMENTATION

Executes the "Prospect Segmentation: Delete" record operation.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN Input parameter indicating the ID of the record being deleted.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the delete.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


                create procedure dbo.USP_DELETE_PROSPECTSEGMENTATION (
                    @ID uniqueidentifier,
                    @CHANGEAGENTID uniqueidentifier,
                    @CURRENTAPPUSERID uniqueidentifier
                ) as
                    set nocount on;

                    declare @USERCANMODIFY bit;
                    set @USERCANMODIFY = 0;

                    select
                        @USERCANMODIFY = 1
                    from
                        dbo.PROSPECTSEGMENTATION PS
                    left join
                        dbo.APPUSER AU on AU.ID = PS.OWNERID
                    where
                        PS.ID = @ID and
                        (PS.OTHERSCANMODIFY = 1 or
                         PS.OWNERID = @CURRENTAPPUSERID or
                         PS.OWNERID is null or
                         dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1);

                    if @USERCANMODIFY = 1 begin

                        declare @PRIMARYVARIABLEID uniqueidentifier;
                        declare @SECONDARYVARIABLE1ID uniqueidentifier;
                        declare @SECONDARYVARIABLE2ID uniqueidentifier;

            exec dbo.USP_PROSPECTSEGMENTATION_PROSPECTS_CLEAR @ID, @CHANGEAGENTID
                        exec dbo.USP_PROSPECTSEGMENTATION_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;

                    end
                    else begin
                        raiserror ('ERR_PROSPECTSEGMENTATION_CANNOTMODIFY',13,1);
                        return 0;
                    end

                    return 0;