UFN_RECOGNITIONCREDIT_GETTAXCLAIMAMOUNTINCURRENCY
Returns the gift aid amount for a recognition credit in the given currency.
Return
Return Type |
---|
money |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUESPLITID | uniqueidentifier | IN | |
@REVENUESPLITAMOUNT | money | IN | |
@RECOGNITIONAMOUNT | money | IN | |
@TRANSACTIONTYPECODE | tinyint | IN | |
@APPLICATIONCODE | tinyint | IN | |
@CURRENCYID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_RECOGNITIONCREDIT_GETTAXCLAIMAMOUNTINCURRENCY
(
@REVENUESPLITID uniqueidentifier,
@REVENUESPLITAMOUNT money,
@RECOGNITIONAMOUNT money,
@TRANSACTIONTYPECODE tinyint,
@APPLICATIONCODE tinyint,
@CURRENCYID uniqueidentifier
)
returns money
as
begin
declare @REVENUESPLITTAXCLAIMAMOUNT money = 0;
set @REVENUESPLITTAXCLAIMAMOUNT = dbo.UFN_GIFTAID_GETTAXCLAIMAMOUNTINCURRENCY(@REVENUESPLITID, @TRANSACTIONTYPECODE, @APPLICATIONCODE, @CURRENCYID)
declare @RECOGNITIONTAXCLAIMAMOUNT money
if @RECOGNITIONAMOUNT >= @REVENUESPLITAMOUNT
set @RECOGNITIONTAXCLAIMAMOUNT = @REVENUESPLITTAXCLAIMAMOUNT
else
begin
-- Calculate the recognition tax claim amount based on the ratio of the revenue split's amount to the recognition's amount
-- Cast @RECOGNITIONAMOUNT to a decimal(20, 10) so @RATIO has its full precision.
declare @RATIO decimal(20, 10)
set @RATIO = 0
if @REVENUESPLITAMOUNT > 0
set @RATIO = cast(@RECOGNITIONAMOUNT as decimal(20, 10)) / @REVENUESPLITAMOUNT
set @RECOGNITIONTAXCLAIMAMOUNT = @RATIO * @REVENUESPLITTAXCLAIMAMOUNT
end
return @RECOGNITIONTAXCLAIMAMOUNT
end