USP_REVALUECOMMITMENTSPROCESS_EXCEPTIONREPORT
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | nvarchar(36) | IN |
Definition
Copy
create procedure dbo.USP_REVALUECOMMITMENTSPROCESS_EXCEPTIONREPORT(@ID nvarchar(36) = null)
with execute as owner
as
set nocount on;
declare @TABLENAME nvarchar(255);
declare @SQL nvarchar(4000);
select
@TABLENAME = BUSINESSPROCESSOUTPUT.TABLENAME
from dbo.BUSINESSPROCESSOUTPUT
where BUSINESSPROCESSSTATUSID = @ID and BUSINESSPROCESSOUTPUT.TABLEKEY = 'EXCEPTION';
if @TABLENAME is null or OBJECT_ID(@TABLENAME) is null
raiserror('Business process exception table could not be found. The process might not have completed successfully. ',13,1);
begin try
-- Build a dynamic SQL statement to retrieve data from the necessary table(s)
set @SQL = 'select
CONSTITUENT.NAME,
FINANCIALTRANSACTION.TYPE as TRANSACTIONTYPE,
FINANCIALTRANSACTION.POSTDATE,
FINANCIALTRANSACTION.TRANSACTIONAMOUNT,
EXCEPTION.EXCEPTIONMESSAGE,
''http://www.blackbaud.com?REVENUEID='' + cast(FINANCIALTRANSACTION.ID as nvarchar(max)) as REVENUELINK,
CURRENCYPROPERTIES.ID as CURRENCYID,
CURRENCYPROPERTIES.ISO4217 as CURRENCYISO,
CURRENCYPROPERTIES.DECIMALDIGITS as CURRENCYDECIMALDIGITS,
CURRENCYPROPERTIES.CURRENCYSYMBOL as CURRENCYSYMBOL,
CURRENCYPROPERTIES.SYMBOLDISPLAYSETTINGCODE as CURRENCYSYMBOLDISPLAYSETTINGCODE
from ' + @TABLENAME + ' as EXCEPTION
inner join dbo.FINANCIALTRANSACTION on EXCEPTION.REVENUEID = FINANCIALTRANSACTION.ID
inner join dbo.CONSTITUENT on FINANCIALTRANSACTION.CONSTITUENTID = CONSTITUENT.ID
cross apply dbo.UFN_CURRENCY_GETPROPERTIES(FINANCIALTRANSACTION.TRANSACTIONCURRENCYID) CURRENCYPROPERTIES
order by
FINANCIALTRANSACTION.POSTDATE,
FINANCIALTRANSACTION.TRANSACTIONAMOUNT,
FINANCIALTRANSACTION.TYPE,
EXCEPTION.EXCEPTIONMESSAGE';
-- Execute the statement
exec sp_executesql @SQL;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch