USP_REVENUE_UPDATERECOGNITION
Updates recognition credit based on changes to revenue.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@REVENUEID | uniqueidentifier | IN | |
@OLDSPLITSXML | xml | IN | |
@UPDATETYPE | tinyint | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CHANGEDATE | datetime | IN | |
@OLDRECOGNITIONSXML | xml | IN | |
@APPLICATIONTYPE | tinyint | IN | |
@APPLICATIONID | uniqueidentifier | IN | |
@TRANSACTIONTYPE | tinyint | IN |
Definition
Copy
CREATE procedure dbo.USP_REVENUE_UPDATERECOGNITION
(
@REVENUEID uniqueidentifier,
@OLDSPLITSXML xml,
@UPDATETYPE tinyint, -- 0 = no update, 1 = update proportionally, 2 = update based on defaults
@CHANGEAGENTID uniqueidentifier,
@CHANGEDATE datetime,
@OLDRECOGNITIONSXML xml,
@APPLICATIONTYPE tinyint = null,
@APPLICATIONID uniqueidentifier = null,
@TRANSACTIONTYPE tinyint = null
)
as
begin
set nocount on;
declare @REVENUEGIVENANONYMOUSLY bit
declare @CONSTITUENTID uniqueidentifier
declare @DATE datetime
declare @ORGANIZATIONCURRENCYID uniqueidentifier;
declare @BASETOORGANIZATIONEXCHANGERATEID uniqueidentifier;
declare @BASECURRENCYID uniqueidentifier;
declare @ORGEXCHANGERATEID uniqueidentifier;
declare @DEFAULTANONYMOUSRECOGNITION bit = 0;
declare @NEWSPLITS table (
ID uniqueidentifier,
AMOUNT money,
BASECURRENCYID uniqueidentifier,
ORGANIZATIONAMOUNT money,
ORGANIZATIONEXCHANGERATEID uniqueidentifier);
declare @OLDRECOGNITIONS table (
ID uniqueidentifier,
CONSTITUENTID uniqueidentifier,
AMOUNT money,
EFFECTIVEDATE datetime,
REVENUERECOGNITIONTYPECODEID uniqueidentifier,
REVENUESPLITID uniqueidentifier);
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
if @CHANGEDATE is null
set @CHANGEDATE = getdate()
begin try
-- Get currency settings
select
@REVENUEGIVENANONYMOUSLY = REVENUE_EXT.GIVENANONYMOUSLY,
@CONSTITUENTID = R.CONSTITUENTID,
@DATE = R.DATE,
@BASECURRENCYID = isnull(REVENUE_EXT.NONPOSTABLEBASECURRENCYID, CURRENCYSET.BASECURRENCYID),
@ORGEXCHANGERATEID = R.ORGEXCHANGERATEID
from dbo.FINANCIALTRANSACTION R inner join dbo.PDACCOUNTSYSTEM on R.PDACCOUNTSYSTEMID = PDACCOUNTSYSTEM.ID
inner join dbo.CURRENCYSET on PDACCOUNTSYSTEM.CURRENCYSETID = CURRENCYSET.ID
inner join dbo.REVENUE_EXT on R.ID = REVENUE_EXT.ID
where R.ID = @REVENUEID
insert @NEWSPLITS(ID, AMOUNT, BASECURRENCYID, ORGANIZATIONAMOUNT, ORGANIZATIONEXCHANGERATEID)
select FINANCIALTRANSACTIONLINEITEM.ID, FINANCIALTRANSACTIONLINEITEM.BASEAMOUNT, @BASECURRENCYID, FINANCIALTRANSACTIONLINEITEM.ORGAMOUNT, @ORGEXCHANGERATEID
from dbo.FINANCIALTRANSACTIONLINEITEM
inner join dbo.REVENUESPLIT_EXT RSE on RSE.ID = FINANCIALTRANSACTIONLINEITEM.ID
where FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = @REVENUEID
and FINANCIALTRANSACTIONLINEITEM.TYPECODE != 1
and FINANCIALTRANSACTIONLINEITEM.DELETEDON is null
exec dbo.USP_CURRENCY_GETCURRENCYVALUES
@AMOUNT=null,
@DATE=@DATE,
@BASECURRENCYID=@BASECURRENCYID,
@BASEEXCHANGERATEID=null,
@TRANSACTIONCURRENCYID=null,
@BASEAMOUNT=null,
@ORGANIZATIONCURRENCYID=@ORGANIZATIONCURRENCYID output,
@ORGANIZATIONAMOUNT=null,
@ORGANIZATIONEXCHANGERATEID=null,
@LOOKUPORGANIZATIONEXCHANGERATE=0,
@BASETOORGANIZATIONEXCHANGERATEID=@BASETOORGANIZATIONEXCHANGERATEID output;
--Read the default anonymous recognition setting value
select @DEFAULTANONYMOUSRECOGNITION = DEFAULTANONYMOUSRECOGNITION
from dbo.RECOGNITIONDEFAULT
-- In case old recognitions have been deleted, use the XML to determine old amounts.
if @OLDRECOGNITIONSXML is not null
insert @OLDRECOGNITIONS (ID, CONSTITUENTID, AMOUNT, EFFECTIVEDATE, REVENUERECOGNITIONTYPECODEID, REVENUESPLITID)
select
ID, CONSTITUENTID, AMOUNT, EFFECTIVEDATE, REVENUERECOGNITIONTYPECODEID, REVENUESPLITID
from
dbo.UFN_REVENUE_GETRECOGNITIONS_FORREVENUE_FROMITEMLISTXML(@OLDRECOGNITIONSXML)
else
insert @OLDRECOGNITIONS (ID, CONSTITUENTID, AMOUNT, EFFECTIVEDATE, REVENUERECOGNITIONTYPECODEID, REVENUESPLITID)
select
ID, CONSTITUENTID, AMOUNT, EFFECTIVEDATE, REVENUERECOGNITIONTYPECODEID, REVENUESPLITID
from
dbo.UFN_REVENUE_GETRECOGNITIONS_FORREVENUE(@REVENUEID)
-- Delete old recognitions, if they exist
declare @CONTEXTCACHE varbinary(128);
set @CONTEXTCACHE = CONTEXT_INFO();
set context_info @changeagentid;
declare @ACTUALDATESFORRECOGNITONS table
(
REVENUERECOGNITIONID uniqueidentifier,
REVENUESPLITID uniqueidentifier,
DATEADDED datetime,
DATECHANGED datetime
);
insert into @ACTUALDATESFORRECOGNITONS (REVENUERECOGNITIONID,REVENUESPLITID,DATEADDED,DATECHANGED)
select RR.ID, RR.REVENUESPLITID, RR.DATEADDED, RR.DATECHANGED from REVENUERECOGNITION RR
inner join dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@OLDSPLITSXML) SPLITS on RR.REVENUESPLITID = SPLITS.ID;
if @UPDATETYPE <> 0
begin
delete from dbo.REVENUERECOGNITION
where REVENUESPLITID in (select ID from dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@OLDSPLITSXML))
end
--Remove other recognition credits
delete dbo.RECOGNITIONCREDIT
from dbo.RECOGNITIONCREDIT
inner join dbo.DONORCHALLENGEENCUMBERED on RECOGNITIONCREDIT.DONORCHALLENGEENCUMBEREDID = DONORCHALLENGEENCUMBERED.ID
where RECOGNITIONCREDIT.RECOGNITIONCREDITTYPECODE = 1
and DONORCHALLENGEENCUMBERED.REVENUESPLITID in (select ID from dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@OLDSPLITSXML))
and @UPDATETYPE <> 0;
--Remove credits on the donor challenge claim to match edit form
delete dbo.REVENUERECOGNITION
from dbo.REVENUERECOGNITION
inner join dbo.FINANCIALTRANSACTIONLINEITEM on REVENUERECOGNITION.REVENUESPLITID = FINANCIALTRANSACTIONLINEITEM.ID
inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
inner join dbo.FINANCIALTRANSACTION on FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = FINANCIALTRANSACTION.ID
inner join dbo.DONORCHALLENGEENCUMBERED on FINANCIALTRANSACTION.ID = DONORCHALLENGEENCUMBERED.MATCHEDREVENUEID
where DONORCHALLENGEENCUMBERED.REVENUESPLITID in (select ID from dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@OLDSPLITSXML))
and FINANCIALTRANSACTION.CONSTITUENTID <> REVENUERECOGNITION.CONSTITUENTID
and REVENUESPLIT_EXT.DESIGNATIONID = DONORCHALLENGEENCUMBERED.DESIGNATIONID
and @UPDATETYPE <> 0;
if @CONTEXTCACHE is not null
set context_info @CONTEXTCACHE
if @UPDATETYPE = 0 -- No update, restore the original recognitions
begin
merge dbo.REVENUERECOGNITION as target
using (select OLDREC.ID
,REVENUESPLIT.ID [REVENUESPLITID]
,OLDREC.CONSTITUENTID
,OLDREC.AMOUNT
,OLDREC.REVENUERECOGNITIONTYPECODEID
,OLDREC.EFFECTIVEDATE
from @NEWSPLITS REVENUESPLIT
inner join @OLDRECOGNITIONS OLDREC on REVENUESPLIT.ID = OLDREC.REVENUESPLITID) as source
on source.ID = target.ID
when matched then
update set
REVENUESPLITID = source.REVENUESPLITID
,CONSTITUENTID = source.CONSTITUENTID
,AMOUNT = source.AMOUNT
,EFFECTIVEDATE = source.EFFECTIVEDATE
,REVENUERECOGNITIONTYPECODEID = source.REVENUERECOGNITIONTYPECODEID
,CHANGEDBYID = @CHANGEAGENTID
,DATECHANGED = coalesce((select DATECHANGED from @ACTUALDATESFORRECOGNITONS where REVENUERECOGNITIONID = source.id), @CHANGEDATE)
,ORGANIZATIONAMOUNT =
case
when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
then dbo.UFN_CURRENCY_CONVERT(source.AMOUNT, @BASETOORGANIZATIONEXCHANGERATEID)
else source.AMOUNT
end
,ORGANIZATIONEXCHANGERATEID = @BASETOORGANIZATIONEXCHANGERATEID
when not matched by target then
insert
(
ID,
REVENUESPLITID,
CONSTITUENTID,
AMOUNT,
EFFECTIVEDATE,
REVENUERECOGNITIONTYPECODEID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED,
BASECURRENCYID,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID
)
values(
source.ID,
source.REVENUESPLITID,
source.CONSTITUENTID,
source.AMOUNT,
source.EFFECTIVEDATE,
source.REVENUERECOGNITIONTYPECODEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
coalesce((select DATEADDED from @ACTUALDATESFORRECOGNITONS where REVENUERECOGNITIONID = source.id), @CHANGEDATE),
coalesce((select DATECHANGED from @ACTUALDATESFORRECOGNITONS where REVENUERECOGNITIONID = source.id), @CHANGEDATE),
@BASECURRENCYID,
case
when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
then dbo.UFN_CURRENCY_CONVERT(source.AMOUNT, @BASETOORGANIZATIONEXCHANGERATEID)
else source.AMOUNT
end,
@BASETOORGANIZATIONEXCHANGERATEID);
end
else if @UPDATETYPE = 1 -- Update proportionally
begin
merge dbo.REVENUERECOGNITION as target
using (select isnull(OLDREC.ID, NEWID()) ID
,RS.ID [REVENUESPLITID]
,OLDREC.CONSTITUENTID
,dbo.UFN_CURRENCY_ROUND((RS.AMOUNT*(OLDREC.AMOUNT/OLDSPLIT.AMOUNT)),BC.DECIMALDIGITS, BC.ROUNDINGTYPECODE) AMOUNT
,OLDREC.REVENUERECOGNITIONTYPECODEID
from @NEWSPLITS RS
inner join dbo.UFN_REVENUE_GETSPLITS_2_FROMITEMLISTXML(@OLDSPLITSXML) OLDSPLIT on RS.ID = OLDSPLIT.ID
inner join @OLDRECOGNITIONS OLDREC on OLDSPLIT.ID = OLDREC.REVENUESPLITID
inner join dbo.CURRENCY BC on RS.BASECURRENCYID = BC.ID
where OLDSPLIT.AMOUNT > 0) as source
on source.ID = target.ID
when matched then
update set
REVENUESPLITID = source.REVENUESPLITID
,CONSTITUENTID = source.CONSTITUENTID
,AMOUNT = source.AMOUNT
,EFFECTIVEDATE = @DATE
,REVENUERECOGNITIONTYPECODEID = source.REVENUERECOGNITIONTYPECODEID
,CHANGEDBYID = @CHANGEAGENTID
,DATECHANGED = @CHANGEDATE
,ORGANIZATIONAMOUNT = case
when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
then dbo.UFN_CURRENCY_CONVERT(source.AMOUNT, @BASETOORGANIZATIONEXCHANGERATEID)
else source.AMOUNT
end
,ORGANIZATIONEXCHANGERATEID = @BASETOORGANIZATIONEXCHANGERATEID
when not matched by target then
insert
(
ID,
REVENUESPLITID,
CONSTITUENTID,
AMOUNT,
EFFECTIVEDATE,
REVENUERECOGNITIONTYPECODEID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED,
BASECURRENCYID,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID
)
values(
source.ID,
source.REVENUESPLITID,
source.CONSTITUENTID,
source.AMOUNT,
@DATE,
source.REVENUERECOGNITIONTYPECODEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CHANGEDATE,
@CHANGEDATE,
@BASECURRENCYID,
case
when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
then dbo.UFN_CURRENCY_CONVERT(source.AMOUNT, @BASETOORGANIZATIONEXCHANGERATEID)
else source.AMOUNT
end,
@BASETOORGANIZATIONEXCHANGERATEID);
end
else if @UPDATETYPE = 2 -- Update using defaults
begin
declare @ORIGINALDONORID uniqueidentifier;
declare @ORIGINALDONATIONDATE datetime;
declare @ORIGINALGIFTID uniqueidentifier;
if @APPLICATIONTYPE = 7
begin
declare @AUTOADDMGPAYMENTCREDIT bit
declare @PAYMENTDEFAULTCREDITTYPEID uniqueidentifier
select @AUTOADDMGPAYMENTCREDIT = ADDRECOGNITIONCREDITSONMGPAYMENTAPPLY,
@PAYMENTDEFAULTCREDITTYPEID =
case MGPAYMENTAPPLYRECOGNITIONTYPECODE
when 0 then PAYMENTREVENUERECOGNITIONTYPECODEID
when 1 then null
end
from MATCHINGGIFTPREFERENCEINFO;
if @AUTOADDMGPAYMENTCREDIT = 1
begin
select
@ORIGINALDONORID=FINANCIALTRANSACTION.CONSTITUENTID,
@ORIGINALDONATIONDATE=FINANCIALTRANSACTION.DATE,
@ORIGINALGIFTID = FINANCIALTRANSACTION.ID
from FINANCIALTRANSACTION
inner join REVENUEMATCHINGGIFT on REVENUEMATCHINGGIFT.MGSOURCEREVENUEID = FINANCIALTRANSACTION.ID
inner join REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
where REVENUEMATCHINGGIFT.ID=@APPLICATIONID and (REVENUE_EXT.GIVENANONYMOUSLY = 0 or @DEFAULTANONYMOUSRECOGNITION = 1)
if @ORIGINALDONORID is not null
begin
declare @CREATEDSPLITS xml
set @CREATEDSPLITS = (select
FINANCIALTRANSACTIONLINEITEM.BASEAMOUNT as AMOUNT,
REVENUESPLIT_EXT.DESIGNATIONID,
FINANCIALTRANSACTIONLINEITEM.ID,
FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID,
REVENUESPLIT_EXT.APPLICATIONCODE,
REVENUESPLIT_EXT.TYPECODE,
FINANCIALTRANSACTION.TRANSACTIONCURRENCYID
from dbo.FINANCIALTRANSACTIONLINEITEM inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
inner join dbo.FINANCIALTRANSACTION on FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = FINANCIALTRANSACTION.ID
where FINANCIALTRANSACTIONLINEITEM.ID in (select ID from @NEWSPLITS)
for xml raw('ITEM'),type,elements,root('SPLITS'),BINARY BASE64
)
set @CREATEDSPLITS = dbo.UFN_REVENUESPLIT_CONVERTAMOUNTSINXML(@CREATEDSPLITS, dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(), null, dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY(), null)
if (select count(*) from dbo.MATCHINGGIFTPREFERENCEINFO where MGPAYMENTAPPLYRECOGNITIONTYPECODE = 0) > 0
exec dbo.USP_RECOGNITIONCREDIT_ADDDEFAULTSFORMGSPLITS @CREATEDSPLITS, @ORIGINALDONORID, @ORIGINALDONATIONDATE, @PAYMENTDEFAULTCREDITTYPEID, @CHANGEAGENTID, @CHANGEDATE;
if (select count(*) from dbo.MATCHINGGIFTPREFERENCEINFO where MGPAYMENTAPPLYRECOGNITIONTYPECODE = 1) > 0
exec dbo.USP_RECOGNITIONCREDIT_ADDTOGROUPMEMBERS @CREATEDSPLITS, @ORIGINALDONORID, @ORIGINALDONATIONDATE, @ORIGINALGIFTID, @PAYMENTDEFAULTCREDITTYPEID, @CHANGEAGENTID, @CHANGEDATE;
end
end
end
else if @TRANSACTIONTYPE = 3 -- Matching gift claim
begin
--If recognition credits should be added automatically when a MG claim is created, add them.
declare @AUTOADDMGCLAIMCREDIT bit;
declare @CLAIMDEFAULTCREDITTYPEID uniqueidentifier;
declare @AUTOADDMGCLAIMCREDITFORORG bit;
declare @CLAIMDEFAULTCREDITTYPEIDFORORG uniqueidentifier;
select
@AUTOADDMGCLAIMCREDIT = ADDRECOGNITIONCREDITSONMGCLAIMADD,
@CLAIMDEFAULTCREDITTYPEID =
case MGCLAIMADDRECOGNITIONTYPECODE
when 0 then CLAIMREVENUERECOGNITIONTYPECODEID
when 1 then null
end,
@AUTOADDMGCLAIMCREDITFORORG = ADDRECOGNITIONCREDITSTOMATCHINGORGONMGCLAIMADD,
@CLAIMDEFAULTCREDITTYPEIDFORORG = MATCHINGORGCLAIMREVENUERECOGNITIONTYPECODEID
from MATCHINGGIFTPREFERENCEINFO;
declare @MGSPLITS xml;
if @AUTOADDMGCLAIMCREDIT = 1 or @AUTOADDMGCLAIMCREDITFORORG = 1
set @MGSPLITS = dbo.UFN_REVENUE_GETSPLITS_2_TOITEMLISTXML(@REVENUEID);
if @AUTOADDMGCLAIMCREDIT = 1
begin
select @ORIGINALDONORID=FINANCIALTRANSACTION.CONSTITUENTID,
@ORIGINALDONATIONDATE=FINANCIALTRANSACTION.DATE,
@ORIGINALGIFTID = FINANCIALTRANSACTION.ID
from dbo.FINANCIALTRANSACTION inner join dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
inner join REVENUEMATCHINGGIFT on REVENUEMATCHINGGIFT.MGSOURCEREVENUEID = FINANCIALTRANSACTION.ID
where REVENUEMATCHINGGIFT.ID=@REVENUEID and (REVENUE_EXT.GIVENANONYMOUSLY = 0 or @DEFAULTANONYMOUSRECOGNITION = 1)
if @ORIGINALDONORID is not null
begin
if (select count(*) from dbo.MATCHINGGIFTPREFERENCEINFO where MGCLAIMADDRECOGNITIONTYPECODE = 0) > 0
begin
exec dbo.USP_RECOGNITIONCREDIT_ADDDEFAULTSFORMGSPLITS @MGSPLITS, @ORIGINALDONORID, @ORIGINALDONATIONDATE, @CLAIMDEFAULTCREDITTYPEID, @CHANGEAGENTID, @CHANGEDATE;
end
if (select count(*) from dbo.MATCHINGGIFTPREFERENCEINFO where MGCLAIMADDRECOGNITIONTYPECODE = 1) > 0
begin
exec dbo.USP_RECOGNITIONCREDIT_ADDTOGROUPMEMBERS @MGSPLITS, @ORIGINALDONORID, @ORIGINALDONATIONDATE, @ORIGINALGIFTID, @CLAIMDEFAULTCREDITTYPEID, @CHANGEAGENTID, @CHANGEDATE, 1;
end
end
end
declare @GIFTISANONYMOUS bit = 0;
select @GIFTISANONYMOUS = GIVENANONYMOUSLY from dbo.REVENUE_EXT where ID = @REVENUEID
if @AUTOADDMGCLAIMCREDITFORORG = 1 and (@GIFTISANONYMOUS = 0 or @DEFAULTANONYMOUSRECOGNITION = 1)
exec dbo.USP_RECOGNITIONCREDIT_ADDDEFAULTSFORMGSPLITS @MGSPLITS, @CONSTITUENTID, @DATE, @CLAIMDEFAULTCREDITTYPEIDFORORG, @CHANGEAGENTID, @CHANGEDATE;
end
else
begin
insert into dbo.REVENUERECOGNITION
(
ID,
REVENUESPLITID,
CONSTITUENTID,
AMOUNT,
EFFECTIVEDATE,
REVENUERECOGNITIONTYPECODEID,
ADDEDBYID,
CHANGEDBYID,
DATEADDED,
DATECHANGED,
BASECURRENCYID,
ORGANIZATIONAMOUNT,
ORGANIZATIONEXCHANGERATEID
)
select
NEWID(),
FINANCIALTRANSACTIONLINEITEM.ID,
RECOGNITIONS.CONSTITUENTID,
RECOGNITIONS.AMOUNT,
@DATE,
RECOGNITIONS.REVENUERECOGNITIONTYPECODEID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CHANGEDATE,
@CHANGEDATE,
@BASECURRENCYID,
case
when @BASECURRENCYID <> @ORGANIZATIONCURRENCYID
then dbo.UFN_CURRENCY_CONVERT(RECOGNITIONS.AMOUNT, @BASETOORGANIZATIONEXCHANGERATEID)
else RECOGNITIONS.AMOUNT
end,
@BASETOORGANIZATIONEXCHANGERATEID ORGANIZATIONEXCHANGERATEID
from dbo.FINANCIALTRANSACTIONLINEITEM
cross apply dbo.UFN_REVENUEDETAIL_GETDEFAULTRECOGNITIONS(@REVENUEGIVENANONYMOUSLY, @CONSTITUENTID, FINANCIALTRANSACTIONLINEITEM.BASEAMOUNT, @DATE, null) as RECOGNITIONS
where
FINANCIALTRANSACTIONLINEITEM.ID in (select ID from @NEWSPLITS)
end
end
return 0;
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1;
end catch
end