UFN_COUNT_UNMAPPEDTRANSACTIONERRORS

Returns the number of transaction messages for a given account system.

Return

Return Type
int

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN

Definition

Copy


CREATE function dbo.UFN_COUNT_UNMAPPEDTRANSACTIONERRORS
(
    @ID    uniqueidentifier
)
returns integer
with execute as caller
as begin
    declare @COUNT integer;

    WITH ErrorMessage_CTE (ID, ERRORMESSAGE, TRANSACTIONTYPE, OCCURRENCES, DATEADDED)
    AS 
    (
        select MAX(cast(ME.ID as nvarchar(36))), ME.ERRORMESSAGE, ME.TRANSACTIONTYPE, COUNT(ME.ID), MIN(ME.DATEADDED)
        from dbo.GLACCOUNTMAPPINGERROR ME
        left outer join dbo.CREDIT C on C.ID = ME.TRANSACTIONID
        left outer join dbo.SALESORDER S on S.ID = ME.TRANSACTIONID or C.SALESORDERID = S.ID
        left outer join dbo.PDACCOUNTSYSTEMFORREVENUE R on R.ID = ME.TRANSACTIONID or R.ID = S.REVENUEID
        left outer join dbo.BANKACCOUNTTRANSACTION BAT on BAT.ID = ME.TRANSACTIONID
        left outer join dbo.BANKACCOUNT BA on BA.ID = BAT.BANKACCOUNTID
        left outer join dbo.BANKACCOUNTDEPOSITCORRECTION DC on DC.ID = ME.TRANSACTIONID
        left outer join dbo.BANKACCOUNTTRANSACTION BAT_DC on BAT_DC.ID = DC.DEPOSITID
        left outer join dbo.BANKACCOUNT BA_DC on BA_DC.ID = BAT_DC.BANKACCOUNTID
        where ((R.ID is not null and R.PDACCOUNTSYSTEMID = @ID) or (BAT.ID is not null and BA.PDACCOUNTSYSTEMID = @ID) or (DC.ID is not null and BA_DC.PDACCOUNTSYSTEMID = @ID))
        and ME.DELETED = 0
        group by ME.ERRORMESSAGE, ME.TRANSACTIONTYPE
    )

    select @COUNT = COUNT(ID)
    from ErrorMessage_CTE;

    return @COUNT
end