USP_DATAFORMTEMPLATE_EDIT_DESIGNATIONLEVELFINANCIALINFO
The save procedure used by the edit dataform template "Fundraising Purpose Financial Information 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. |
@STARTDATE | datetime | IN | Start date |
@ENDDATE | datetime | IN | End date |
@BOOKVALUESTART | money | IN | Book value start |
@BOOKVALUEEND | money | IN | Book value end |
@MARKETVALUESTART | money | IN | Market value start |
@MARKETVALUEEND | money | IN | Market value end |
@TOTALGIFTREVENUE | money | IN | Total gift revenue |
@TOTALDISBURSEMENTS | money | IN | Total disbursements |
@PLEDGEBALANCE | money | IN | Pledge balance |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DESIGNATIONLEVELFINANCIALINFO
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@STARTDATE datetime,
@ENDDATE datetime,
@BOOKVALUESTART money,
@BOOKVALUEEND money,
@MARKETVALUESTART money,
@MARKETVALUEEND money,
@TOTALGIFTREVENUE money,
@TOTALDISBURSEMENTS money,
@PLEDGEBALANCE money
)
as
begin
set nocount on
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @BASECURRENCYID uniqueidentifier;
declare @CURRENCYEXCHANGERATEID uniqueidentifier;
declare @ORGANIZATIONBOOKVALUESTART money;
declare @ORGANIZATIONBOOKVALUEEND money;
declare @ORGANIZATIONMARKETVALUESTART money;
declare @ORGANIZATIONMARKETVALUEEND money;
declare @ORGANIZATIONTOTALGIFTREVENUE money;
declare @ORGANIZATIONPLEDGEBALANCE money;
declare @ORGANIZATIONTOTALDISBURSEMENTS money;
declare @ORGANIZATIONCURRENCYID uniqueidentifier;
declare @DATEADDED datetime;
set @ORGANIZATIONCURRENCYID = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();
select
@BASECURRENCYID = DESIGNATIONLEVELFINANCIALINFO.BASECURRENCYID,
@DATEADDED = DESIGNATIONLEVELFINANCIALINFO.DATEADDED,
@CURRENCYEXCHANGERATEID = DESIGNATIONLEVELFINANCIALINFO.ORGANIZATIONEXCHANGERATEID
from
dbo.DESIGNATIONLEVELFINANCIALINFO
where
DESIGNATIONLEVELFINANCIALINFO.ID = @ID;
if (@ORGANIZATIONCURRENCYID = @BASECURRENCYID)
begin
select @ORGANIZATIONBOOKVALUESTART = @BOOKVALUESTART,
@ORGANIZATIONBOOKVALUEEND = @BOOKVALUEEND,
@ORGANIZATIONMARKETVALUESTART = @MARKETVALUESTART,
@ORGANIZATIONMARKETVALUEEND = @MARKETVALUEEND,
@ORGANIZATIONTOTALGIFTREVENUE = @TOTALGIFTREVENUE,
@ORGANIZATIONPLEDGEBALANCE = @PLEDGEBALANCE,
@ORGANIZATIONTOTALDISBURSEMENTS = @TOTALDISBURSEMENTS
end
else
begin
if @CURRENCYEXCHANGERATEID is null
set @CURRENCYEXCHANGERATEID = dbo.UFN_CURRENCYEXCHANGERATE_GETLATEST(@BASECURRENCYID, @ORGANIZATIONCURRENCYID, @DATEADDED, 0, null);
select @ORGANIZATIONBOOKVALUESTART = dbo.UFN_CURRENCY_CONVERT(@BOOKVALUESTART, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONBOOKVALUEEND = dbo.UFN_CURRENCY_CONVERT(@BOOKVALUEEND, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONMARKETVALUESTART = dbo.UFN_CURRENCY_CONVERT(@MARKETVALUESTART, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONMARKETVALUEEND = dbo.UFN_CURRENCY_CONVERT(@MARKETVALUEEND, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONTOTALGIFTREVENUE = dbo.UFN_CURRENCY_CONVERT(@TOTALGIFTREVENUE, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONPLEDGEBALANCE = dbo.UFN_CURRENCY_CONVERT(@PLEDGEBALANCE, @CURRENCYEXCHANGERATEID),
@ORGANIZATIONTOTALDISBURSEMENTS = dbo.UFN_CURRENCY_CONVERT(@TOTALDISBURSEMENTS, @CURRENCYEXCHANGERATEID)
end
update
dbo.DESIGNATIONLEVELFINANCIALINFO
set
STARTDATE = @STARTDATE,
ENDDATE = @ENDDATE,
BOOKVALUESTART = @BOOKVALUESTART,
BOOKVALUEEND = @BOOKVALUEEND,
MARKETVALUESTART = @MARKETVALUESTART,
MARKETVALUEEND = @MARKETVALUEEND,
TOTALGIFTREVENUE = @TOTALGIFTREVENUE,
TOTALDISBURSEMENTS = @TOTALDISBURSEMENTS,
PLEDGEBALANCE = @PLEDGEBALANCE,
ORGANIZATIONBOOKVALUESTART = @ORGANIZATIONBOOKVALUESTART,
ORGANIZATIONBOOKVALUEEND = @ORGANIZATIONBOOKVALUEEND,
ORGANIZATIONMARKETVALUESTART = @ORGANIZATIONMARKETVALUESTART,
ORGANIZATIONMARKETVALUEEND = @ORGANIZATIONMARKETVALUEEND,
ORGANIZATIONTOTALGIFTREVENUE = @ORGANIZATIONTOTALGIFTREVENUE,
ORGANIZATIONTOTALDISBURSEMENTS = @ORGANIZATIONTOTALDISBURSEMENTS,
ORGANIZATIONPLEDGEBALANCE = @ORGANIZATIONPLEDGEBALANCE,
ORGANIZATIONEXCHANGERATEID = @CURRENCYEXCHANGERATEID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
ID = @ID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0
end