USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPCARD

The save procedure used by the edit dataform template "Membership Card 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.
@MEMBERSHIPID uniqueidentifier IN MEMBERSHIPID
@CONSTITUENTID uniqueidentifier IN Member
@NAMEONCARD nvarchar(700) IN Name on card
@EXPIRATIONDATE datetime IN Expires on
@COMMENTS nvarchar(1000) IN Comments

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_MEMBERSHIPCARD
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @MEMBERSHIPID uniqueidentifier,
                        @CONSTITUENTID uniqueidentifier,
                        @NAMEONCARD nvarchar(700),
                        @EXPIRATIONDATE datetime,
                        @COMMENTS nvarchar(1000)
                    )
                    as
                        set nocount on;

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

                        declare @PRINTDATE datetime;

                        select
                            @PRINTDATE = PRINTDATE
                        from
                            dbo.MEMBERSHIPCARD
                        where
                            ID = @ID

                        declare @MEMBERID uniqueidentifier;

                        select
                            @MEMBERID = ID
                        from
                            dbo.MEMBER M
                        where
                            MEMBERSHIPID = @MEMBERSHIPID
                            and CONSTITUENTID = @CONSTITUENTID

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

                        begin try
                            if @MEMBERID is null
                                raiserror('Constituent is not a member of the membership.', 13, 1);

                            update dbo.MEMBERSHIPCARD set
                                MEMBERID = @MEMBERID,
                                NAMEONCARD = @NAMEONCARD,
                                EXPIRATIONDATE = dbo.UFN_DATE_GETLATESTTIME(@EXPIRATIONDATE),
                                COMMENTS = @COMMENTS,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where
                                ID = @ID
                        end try

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

                        return 0;