USP_DATAFORMTEMPLATE_EDIT_GROUPWEALTHCAPACITY
The save procedure used by the edit dataform template "Group Wealth Capacity 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. |
@ESTIMATEDWEALTHID | uniqueidentifier | IN | Estimated wealth |
@ESTIMATEDWEALTHVALUE | money | IN | Estimated wealth value |
@OVERALLRATINGCODEID | uniqueidentifier | IN | Overall rating |
@MAJORGIVINGCAPACITYID | uniqueidentifier | IN | Major giving capacity |
@MAJORGIVINGCAPACITYVALUE | money | IN | Major giving capacity value |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_GROUPWEALTHCAPACITY (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@ESTIMATEDWEALTHID uniqueidentifier,
@ESTIMATEDWEALTHVALUE money,
@OVERALLRATINGCODEID uniqueidentifier,
@MAJORGIVINGCAPACITYID uniqueidentifier,
@MAJORGIVINGCAPACITYVALUE money
) as
set nocount on;
declare @CURRENTDATE datetime;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
begin try
declare @SYSTEMCALCULATED bit;
if (select 1 from dbo.[WEALTHCAPACITY] where [ID] = @ID and
[ESTIMATEDWEALTHID] = @ESTIMATEDWEALTHID and
[ESTIMATEDWEALTHVALUE] = @ESTIMATEDWEALTHVALUE and
[MAJORGIVINGCAPACITYID] = @MAJORGIVINGCAPACITYID and
[MAJORGIVINGCAPACITYVALUE] = @MAJORGIVINGCAPACITYVALUE and
[SYSTEMCALCULATED] = 1) = 1
set @SYSTEMCALCULATED = 1;
else
set @SYSTEMCALCULATED = 0;
declare @CONFIRMED bit;
select
@CONFIRMED = CONFIRMED
from
dbo.[WEALTHCAPACITY]
where
WEALTHCAPACITY.[ID] = @ID
if coalesce(@CONFIRMED,0) = 0
begin
if (select count(ID) from dbo.[WEALTHCAPACITY] where WEALTHCAPACITY.[ID] = @ID) = 1
begin
update
dbo.[WEALTHCAPACITY]
set
[ESTIMATEDWEALTHID] = @ESTIMATEDWEALTHID,
[ESTIMATEDWEALTHVALUE] = @ESTIMATEDWEALTHVALUE,
[OVERALLRATINGCODEID] = @OVERALLRATINGCODEID,
[MAJORGIVINGCAPACITYID] = @MAJORGIVINGCAPACITYID,
[MAJORGIVINGCAPACITYVALUE] = @MAJORGIVINGCAPACITYVALUE,
[SYSTEMCALCULATED] = @SYSTEMCALCULATED,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where
WEALTHCAPACITY.[ID] = @ID;
end
else
begin
insert into dbo.[WEALTHCAPACITY] (
[ID],
[ESTIMATEDWEALTHID],
[ESTIMATEDWEALTHVALUE],
[OVERALLRATINGCODEID],
[MAJORGIVINGCAPACITYID],
[MAJORGIVINGCAPACITYVALUE],
[CONFIRMED],
[SYSTEMCALCULATED],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED]
) values (
@ID,
@ESTIMATEDWEALTHID,
@ESTIMATEDWEALTHVALUE,
@OVERALLRATINGCODEID,
@MAJORGIVINGCAPACITYID,
@MAJORGIVINGCAPACITYVALUE,
0,
@SYSTEMCALCULATED,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
);
end
end
else
begin
raiserror ('ERR_WEALTHCAPACITY_CONFIRMED_CANNOTEDIT',13,1);
return 0;
end
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;