USP_DATAFORMTEMPLATE_EDITSAVE_MODELINGANDPROPENSITY_SIMPLE

The save procedure used by the edit dataform template "Simple Modeling and Propensity 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.
@ANNUALGIFTLIKELIHOOD smallint IN Annual gift likelihood
@ANNUITYLIKELIHOOD smallint IN Annuity likelihood
@BEQUESTLIKELIHOOD smallint IN Bequest likelihood
@CRTLIKELIHOOD smallint IN CRT likelihood
@MAJORGIVINGLIKELIHOOD smallint IN Major giving likelihood
@PLANNEDGIFTLIKELIHOOD smallint IN Planned gift likelihood

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITSAVE_MODELINGANDPROPENSITY_SIMPLE(
                        @ID                        uniqueidentifier,
                        @CHANGEAGENTID            uniqueidentifier = null,
                        @ANNUALGIFTLIKELIHOOD    smallint,
                        @ANNUITYLIKELIHOOD        smallint,
                        @BEQUESTLIKELIHOOD        smallint,
                        @CRTLIKELIHOOD            smallint,
                        @MAJORGIVINGLIKELIHOOD    smallint,
                        @PLANNEDGIFTLIKELIHOOD    smallint
                    ) as
                        set nocount on;

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

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

                        set @ANNUALGIFTLIKELIHOOD =        case when @ANNUALGIFTLIKELIHOOD  is null then -1 else @ANNUALGIFTLIKELIHOOD end;
                        set @ANNUITYLIKELIHOOD =        case when @ANNUITYLIKELIHOOD     is null then -1 else @ANNUITYLIKELIHOOD end;                                  
                        set @BEQUESTLIKELIHOOD =        case when @BEQUESTLIKELIHOOD     is null then -1 else @BEQUESTLIKELIHOOD end;
                        set @CRTLIKELIHOOD =            case when @CRTLIKELIHOOD         is null then -1 else @CRTLIKELIHOOD end;
                        set @MAJORGIVINGLIKELIHOOD =    case when @MAJORGIVINGLIKELIHOOD is null then -1 else @MAJORGIVINGLIKELIHOOD end;
                        set @PLANNEDGIFTLIKELIHOOD =    case when @PLANNEDGIFTLIKELIHOOD is null then -1 else @PLANNEDGIFTLIKELIHOOD end;

                        begin try
                            if exists (select 1 from dbo.MODELINGANDPROPENSITY where ID = @ID) begin
                                update dbo.MODELINGANDPROPENSITY set
                                    ANNUALGIFTLIKELIHOOD =    @ANNUALGIFTLIKELIHOOD,
                                    ANNUITYLIKELIHOOD =        @ANNUITYLIKELIHOOD,
                                    BEQUESTLIKELIHOOD =        @BEQUESTLIKELIHOOD,
                                    CRTLIKELIHOOD =            @CRTLIKELIHOOD,
                                    MAJORGIVINGLIKELIHOOD =    @MAJORGIVINGLIKELIHOOD,
                                    PLANNEDGIFTLIKELIHOOD = @PLANNEDGIFTLIKELIHOOD,
                                    DATECHANGED =            @CURRENTDATE,
                                    CHANGEDBYID =            @CHANGEAGENTID
                                where 
                                    ID = @ID;
                            end
                            else begin
                                insert into dbo.MODELINGANDPROPENSITY
                                (
                                    ID,
                                    ANNUALGIFTLIKELIHOOD,
                                    ANNUITYLIKELIHOOD,
                                    BEQUESTLIKELIHOOD,
                                    CRTLIKELIHOOD,
                                    MAJORGIVINGLIKELIHOOD,
                                    PLANNEDGIFTLIKELIHOOD,
                                    ADDEDBYID,
                                    CHANGEDBYID,
                                    DATEADDED,
                                    DATECHANGED
                                )
                                values
                                (
                                    @ID,
                                    @ANNUALGIFTLIKELIHOOD,
                                    @ANNUITYLIKELIHOOD,
                                    @BEQUESTLIKELIHOOD,
                                    @CRTLIKELIHOOD,
                                    @MAJORGIVINGLIKELIHOOD,
                                    @PLANNEDGIFTLIKELIHOOD,
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID,
                                    @CURRENTDATE,
                                    @CURRENTDATE
                                );
                            end
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR;
                            return 1;
                        end catch

                        return 0;