USP_EVENTPREFERENCEGROUP_DELETE

Executes the "Event Preference Group: 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.

Definition

Copy


                    CREATE procedure dbo.USP_EVENTPREFERENCEGROUP_DELETE
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier
                    )
                    as 
                        begin try
                            --check deletion rules, if any

                            if exists(select 
                                        REGISTRANTPREFERENCE.EVENTPREFERENCEID 
                                    from 
                                        dbo.REGISTRANTPREFERENCE
                                        inner join dbo.EVENTPREFERENCE on EVENTPREFERENCE.ID = REGISTRANTPREFERENCE.EVENTPREFERENCEID
                                        inner join dbo.EVENTPREFERENCEGROUP on EVENTPREFERENCEGROUP.ID = EVENTPREFERENCE.EVENTPREFERENCEGROUPID
                                    where
                                        EVENTPREFERENCEGROUP.ID = @ID)
                                raiserror('The preference group cannot be deleted because one or more preference options exist on a registrant record.',13,1)

                            if exists(select 
                                        BATCHREVENUEREGISTRANTPREFERENCE.EVENTPREFERENCEID 
                                    from 
                                        dbo.BATCHREVENUEREGISTRANTPREFERENCE
                                        inner join dbo.EVENTPREFERENCE on EVENTPREFERENCE.ID = BATCHREVENUEREGISTRANTPREFERENCE.EVENTPREFERENCEID
                                        inner join dbo.EVENTPREFERENCEGROUP on EVENTPREFERENCEGROUP.ID = EVENTPREFERENCE.EVENTPREFERENCEGROUPID
                                    where
                                        EVENTPREFERENCEGROUP.ID = @ID)
                                raiserror('The preference group cannot be deleted because one or more preference options exist on a revenue batch registrant record.',13,1)


                            exec USP_EVENTPREFERENCEGROUP_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID
                            return 0;
                        end try

                        begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                        end catch