USP_DATAFORM_EDIT_PROSPECTPLAN

The save procedure used by the edit dataform template "Prospect Plan Edit 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.
@PROSPECTPLANTYPECODEID uniqueidentifier IN Plan type
@STEPS xml IN

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORM_EDIT_PROSPECTPLAN (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @PROSPECTPLANTYPECODEID uniqueidentifier,
                        @STEPS xml
                    ) as begin
                        set nocount on;

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

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

                        begin try
                            update dbo.PROSPECTPLAN set 
                                PROSPECTPLANTYPECODEID = @PROSPECTPLANTYPECODEID,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @NOW
                            where 
                                ID=@ID;

                            declare @PROSPECTID uniqueidentifier;
                            select @PROSPECTID=PROSPECTID from dbo.PROSPECTPLAN where ID=@ID;

                            set @STEPS=(
                                select 
                                    @PROSPECTID CONSTITUENTID,
                                    ACTUALDATE,
                                    EXPECTEDDATE,
                                    FUNDRAISERID,
                                    ID,
                                    OBJECTIVE,
                                    PROSPECTPLANSTATUSCODEID,
                                    STATUSCODE,
                                    PLANOUTLINESTEPID,
                                    INTERACTIONTYPECODEID
                                from
                                    dbo.UFN_PROSPECTPLAN_STEPS_FROMITEMLISTXML(@STEPS)
                                for xml raw('ITEM'), type, elements, root('STEPS'), binary base64
                            )

                            exec dbo.USP_PROSPECTPLAN_STEPS_UPDATEFROMXML @ID, @STEPS, @CHANGEAGENTID;

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

                        return 0;

                    end;