USP_DATAFORMTEMPLATE_EDIT_MODELINGANDPROPENSITYUPDATEBATCHTEMPLATE_2
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@LOOKUP_ID | nvarchar(100) | IN | |
@KEYNAME | nvarchar(100) | IN | |
@FIRSTNAME | nvarchar(50) | IN | |
@ANNUALGIFTLIKELIHOOD | smallint | IN | |
@ANNUITYLIKELIHOOD | smallint | IN | |
@BEQUESTLIKELIHOOD | smallint | IN | |
@CRTLIKELIHOOD | smallint | IN | |
@MAJORGIVINGLIKELIHOOD | smallint | IN | |
@MEMBERSHIPLIKELIHOOD | smallint | IN | |
@ONLINEGIVINGLIKELIHOOD | smallint | IN | |
@PATIENTRESPONSELIKELIHOOD | smallint | IN | |
@PLANNEDGIFTLIKELIHOOD | smallint | IN | |
@SUGGESTEDMEMBERSHIPLEVELID | uniqueidentifier | IN | |
@SUGGESTEDMEMBERSHIPLEVELSCORE | uniqueidentifier | IN | |
@TARGETGIFTRANGEID | uniqueidentifier | IN | |
@TARGETGIFTRANGESCORE | uniqueidentifier | IN | |
@ANALYTICSPROJECTID | uniqueidentifier | IN | |
@VALIDATEONLY | bit | IN |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_MODELINGANDPROPENSITYUPDATEBATCHTEMPLATE_2
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@LOOKUP_ID nvarchar(100),
@KEYNAME nvarchar(100),
@FIRSTNAME nvarchar(50),
@ANNUALGIFTLIKELIHOOD smallint,
@ANNUITYLIKELIHOOD smallint,
@BEQUESTLIKELIHOOD smallint,
@CRTLIKELIHOOD smallint,
@MAJORGIVINGLIKELIHOOD smallint,
@MEMBERSHIPLIKELIHOOD smallint,
@ONLINEGIVINGLIKELIHOOD smallint,
@PATIENTRESPONSELIKELIHOOD smallint,
@PLANNEDGIFTLIKELIHOOD smallint,
@SUGGESTEDMEMBERSHIPLEVELID uniqueidentifier,
@SUGGESTEDMEMBERSHIPLEVELSCORE uniqueidentifier,
@TARGETGIFTRANGEID uniqueidentifier,
@TARGETGIFTRANGESCORE uniqueidentifier,
@ANALYTICSPROJECTID uniqueidentifier,
@VALIDATEONLY bit
)
as
set nocount on;
if @VALIDATEONLY is null
set @VALIDATEONLY = 0;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
declare @EXISTINGANNUALGIFTLIKELIHOOD smallint;
declare @EXISTINGANNUITYLIKELIHOOD smallint;
declare @EXISTINGBEQUESTLIKELIHOOD smallint;
declare @EXISTINGCRTLIKELIHOOD smallint;
declare @EXISTINGMAJORGIVINGLIKELIHOOD smallint;
declare @EXISTINGMEMBERSHIPLIKELIHOOD smallint;
declare @EXISTINGONLINEGIVINGLIKELIHOOD smallint;
declare @EXISTINGPATIENTRESPONSELIKELIHOOD smallint;
declare @EXISTINGPLANNEDGIFTLIKELIHOOD smallint;
declare @EXISTINGSUGGESTEDMEMBERSHIPLEVELID uniqueidentifier;
declare @EXISTINGTARGETGIFTRANGEID uniqueidentifier;
begin try
select
@EXISTINGANNUALGIFTLIKELIHOOD = ANNUALGIFTLIKELIHOOD,
@EXISTINGANNUITYLIKELIHOOD = ANNUITYLIKELIHOOD,
@EXISTINGBEQUESTLIKELIHOOD = BEQUESTLIKELIHOOD,
@EXISTINGCRTLIKELIHOOD = CRTLIKELIHOOD,
@EXISTINGMAJORGIVINGLIKELIHOOD = MAJORGIVINGLIKELIHOOD,
@EXISTINGMEMBERSHIPLIKELIHOOD = MEMBERSHIPLIKELIHOOD,
@EXISTINGONLINEGIVINGLIKELIHOOD = ONLINEGIVINGLIKELIHOOD,
@EXISTINGPATIENTRESPONSELIKELIHOOD = PATIENTRESPONSELIKELIHOOD,
@EXISTINGPLANNEDGIFTLIKELIHOOD = PLANNEDGIFTLIKELIHOOD,
@EXISTINGSUGGESTEDMEMBERSHIPLEVELID = SUGGESTEDMEMBERSHIPLEVELID,
@EXISTINGTARGETGIFTRANGEID = TARGETGIFTRANGEID
from
dbo.MODELINGANDPROPENSITY
where
ID = @ID;
if @VALIDATEONLY = 0
begin
if exists(select top(1) ID from dbo.MODELINGANDPROPENSITY where ID = @ID) begin
update dbo.MODELINGANDPROPENSITY set
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
ANNUALGIFTLIKELIHOOD = coalesce(@ANNUALGIFTLIKELIHOOD, (select ANNUALGIFTLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
ANNUITYLIKELIHOOD = coalesce(@ANNUITYLIKELIHOOD, (select ANNUITYLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
BEQUESTLIKELIHOOD = coalesce(@BEQUESTLIKELIHOOD, (select BEQUESTLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
CRTLIKELIHOOD = coalesce(@CRTLIKELIHOOD, (select CRTLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
MAJORGIVINGLIKELIHOOD = coalesce(@MAJORGIVINGLIKELIHOOD, (select MAJORGIVINGLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
MEMBERSHIPLIKELIHOOD = coalesce(@MEMBERSHIPLIKELIHOOD, (select MEMBERSHIPLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
ONLINEGIVINGLIKELIHOOD = coalesce(@ONLINEGIVINGLIKELIHOOD, (select ONLINEGIVINGLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
PATIENTRESPONSELIKELIHOOD = coalesce(@PATIENTRESPONSELIKELIHOOD, (select PATIENTRESPONSELIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
PLANNEDGIFTLIKELIHOOD = coalesce(@PLANNEDGIFTLIKELIHOOD, (select PLANNEDGIFTLIKELIHOOD from dbo.MODELINGANDPROPENSITY where ID = @ID), -1),
SUGGESTEDMEMBERSHIPLEVELID = coalesce(nullif(@SUGGESTEDMEMBERSHIPLEVELSCORE, SUGGESTEDMEMBERSHIPLEVELID), @SUGGESTEDMEMBERSHIPLEVELID, (select SUGGESTEDMEMBERSHIPLEVELID from dbo.MODELINGANDPROPENSITY where ID = @ID)),
TARGETGIFTRANGEID = coalesce(nullif(@TARGETGIFTRANGESCORE, TARGETGIFTRANGEID), @TARGETGIFTRANGEID, (select TARGETGIFTRANGEID from dbo.MODELINGANDPROPENSITY where ID = @ID))
where
ID = @ID
end
else begin
insert into dbo.MODELINGANDPROPENSITY
(
ID,
CHANGEDBYID, DATECHANGED, ADDEDBYID, DATEADDED,
ANNUALGIFTLIKELIHOOD, ANNUITYLIKELIHOOD, BEQUESTLIKELIHOOD, CRTLIKELIHOOD, MAJORGIVINGLIKELIHOOD, MEMBERSHIPLIKELIHOOD,
ONLINEGIVINGLIKELIHOOD, PATIENTRESPONSELIKELIHOOD, PLANNEDGIFTLIKELIHOOD, SUGGESTEDMEMBERSHIPLEVELID,
TARGETGIFTRANGEID
)
values
(
@ID,
@CHANGEAGENTID, @CURRENTDATE, @CHANGEAGENTID, @CURRENTDATE,
coalesce(@ANNUALGIFTLIKELIHOOD, -1),
coalesce(@ANNUITYLIKELIHOOD, -1),
coalesce(@BEQUESTLIKELIHOOD, -1),
coalesce(@CRTLIKELIHOOD, -1),
coalesce(@MAJORGIVINGLIKELIHOOD, -1),
coalesce(@MEMBERSHIPLIKELIHOOD, -1),
coalesce(@ONLINEGIVINGLIKELIHOOD, -1),
coalesce(@PATIENTRESPONSELIKELIHOOD, -1),
coalesce(@PLANNEDGIFTLIKELIHOOD, -1),
case
when @SUGGESTEDMEMBERSHIPLEVELSCORE is not null then @SUGGESTEDMEMBERSHIPLEVELSCORE
else @SUGGESTEDMEMBERSHIPLEVELID
end,
case
when @TARGETGIFTRANGESCORE is not null then @TARGETGIFTRANGESCORE
else @TARGETGIFTRANGEID
end
)
end
if @ANNUALGIFTLIKELIHOOD = @EXISTINGANNUALGIFTLIKELIHOOD
set @ANNUALGIFTLIKELIHOOD = null;
if @ANNUITYLIKELIHOOD = @EXISTINGANNUITYLIKELIHOOD
set @ANNUITYLIKELIHOOD = null;
if @ANNUITYLIKELIHOOD = @EXISTINGANNUITYLIKELIHOOD
set @BEQUESTLIKELIHOOD = null;
if @CRTLIKELIHOOD = @EXISTINGCRTLIKELIHOOD
set @CRTLIKELIHOOD = null;
if @MAJORGIVINGLIKELIHOOD = @EXISTINGMAJORGIVINGLIKELIHOOD
set @MAJORGIVINGLIKELIHOOD = null;
if @MEMBERSHIPLIKELIHOOD = @EXISTINGMEMBERSHIPLIKELIHOOD
set @MEMBERSHIPLIKELIHOOD = null;
if @ONLINEGIVINGLIKELIHOOD = @EXISTINGONLINEGIVINGLIKELIHOOD
set @ONLINEGIVINGLIKELIHOOD = null;
if @PATIENTRESPONSELIKELIHOOD = @EXISTINGPATIENTRESPONSELIKELIHOOD
set @PATIENTRESPONSELIKELIHOOD = null;
if @PLANNEDGIFTLIKELIHOOD = @EXISTINGPLANNEDGIFTLIKELIHOOD
set @PLANNEDGIFTLIKELIHOOD = null;
if @SUGGESTEDMEMBERSHIPLEVELID = @EXISTINGSUGGESTEDMEMBERSHIPLEVELID
set @SUGGESTEDMEMBERSHIPLEVELID = null;
if @TARGETGIFTRANGEID = @EXISTINGTARGETGIFTRANGEID
set @TARGETGIFTRANGEID = null;
exec dbo.USP_MODELINGANDPROPENSITYDELIVERY_SYNCHRONIZE @ID, @ANALYTICSPROJECTID, @ANNUALGIFTLIKELIHOOD, @ANNUITYLIKELIHOOD,
@BEQUESTLIKELIHOOD, @CRTLIKELIHOOD, @MAJORGIVINGLIKELIHOOD, @MEMBERSHIPLIKELIHOOD, @ONLINEGIVINGLIKELIHOOD,
@PATIENTRESPONSELIKELIHOOD, @PLANNEDGIFTLIKELIHOOD, @SUGGESTEDMEMBERSHIPLEVELID, @NCOAMOVEDINDICATOR=null,
@TARGETGIFTRANGEID=@TARGETGIFTRANGEID, @WEALTHESTIMATORRATINGID=null;
end
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0;