USP_DATAFORMTEMPLATE_EDIT_COMBINATIONMEMBER

The save procedure used by the edit dataform template "Combination Membership/Level Edit Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@COMBINATIONMEMBERS xml IN Restrict combination to these memberships

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_COMBINATIONMEMBER
(
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @COMBINATIONMEMBERS xml
)
as
    set nocount on;

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

    declare @CURRENTDATE datetime = getdate();

    begin try
        if dbo.UFN_COMBINATION_HASONLINEAVAILABILITY(@ID) = 1 and exists (select * from dbo.UFN_COMBINATION_GETMEMBERSHIPPROGRAMS_FROMITEMLISTXML(@COMBINATIONMEMBERS)) begin
            raiserror('BBERR_COMBINATIONMEMBER_NOTALLOWEDFORONLINE', 13, 1);
        end

        exec dbo.USP_COMBINATION_GETMEMBERSHIPPROGRAMS_UPDATEFROMXML @ID, @COMBINATIONMEMBERS, @CHANGEAGENTID, @CURRENTDATE;
    end try

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

    return 0;