UFN_REVENUESPLITGIFTAID_GENERATEGLDISTRIBUTION

Generates GL accounts for gift aid from the account code mappings defined in the system.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@REVENUESPLITGIFTAIDID uniqueidentifier IN

Definition

Copy


            CREATE function dbo.UFN_REVENUESPLITGIFTAID_GENERATEGLDISTRIBUTION
            (
                @REVENUESPLITGIFTAIDID uniqueidentifier = null
            )
            returns table 
            as return 

            select 
                FINANCIALTRANSACTION.ID as REVENUEID, 
                FINANCIALTRANSACTIONLINEITEM.ID as REVENUESPLITID, 
                dbo.UFN_POSTTOGLPROCESS_GETGLPAYMENTMETHODREVENUETYPEMAPPINGID(206, 202, 202, 202, tf.TRANSACTIONTYPECODE) as GLPAYMENTMETHODREVENUETYPEMAPPINGID,
                tf.TRANSACTIONTYPECODE, 
                dbo.UFN_DATE_GETEARLIESTTIME(getdate()) as POSTDATE,
                case FINANCIALTRANSACTIONLINEITEM.POSTSTATUSCODE when 3 then 2
                                                                                                                 when 2 then 0
                                                                                                                 else 1
                end as POSTSTATUSCODE,
                tf.ACCOUNTSTRING, 
                tf.PROJECTCODE as PROJECT, 
                REVENUESPLITGIFTAID.TAXCLAIMAMOUNT as AMOUNT,
                dbo.UFN_POSTTOGLPROCESS_GETJOURNALREFERENCE (FINANCIALTRANSACTIONLINEITEM.ID, '', 'Gift Aid') as REFERENCE, 
                tf.ERRORMESSAGE,
                REVENUEPAYMENTMETHOD.PAYMENTMETHODCODE,
                FINANCIALTRANSACTION.TYPECODE as REVENUETRANSACTIONTYPECODE,
                REVENUEPAYMENTMETHOD.ID as REVENUEPAYMENTMETHODID,
                REVENUESPLITGIFTAID.BASECURRENCYID,
                REVENUESPLITGIFTAID.TRANSACTIONTAXCLAIMAMOUNT as TRANSACTIONAMOUNT,
                REVENUESPLITGIFTAID.TRANSACTIONCURRENCYID,
                REVENUESPLITGIFTAID.BASEEXCHANGERATEID,
                REVENUESPLITGIFTAID.ORGANIZATIONTAXCLAIMAMOUNT as ORGANIZATIONAMOUNT,
                REVENUESPLITGIFTAID.ORGANIZATIONEXCHANGERATEID,
                tf.MAPPEDVALUES,
                tf.ACCOUNTID
            from 
                dbo.FINANCIALTRANSACTION with (nolock)            
                inner join dbo.REVENUEPAYMENTMETHOD with (nolock) on FINANCIALTRANSACTION.ID = REVENUEPAYMENTMETHOD.REVENUEID
                inner join dbo.FINANCIALTRANSACTIONLINEITEM with (nolock) on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
                inner join dbo.REVENUESPLIT_EXT with (nolock) on REVENUESPLIT_EXT.ID = FINANCIALTRANSACTIONLINEITEM.ID
                inner join dbo.REVENUESPLITGIFTAID with (nolock) on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLITGIFTAID.ID
                cross apply dbo.UFN_REVENUE_GENERATEGLACCOUNT(FINANCIALTRANSACTIONLINEITEM.ID, 202, 202, 202, 206, REVENUESPLIT_EXT.DESIGNATIONID) as tf 

            where 
                (FINANCIALTRANSACTIONLINEITEM.ID = @REVENUESPLITGIFTAIDID
                and REVENUESPLITGIFTAID.DECLINESGIFTAID = 0
                and REVENUESPLITGIFTAID.RULES_STATUS = 1
                and REVENUESPLITGIFTAID.ATTRIBUTES_STATUS = 1 
                and dbo.UFN_GIFTAIDREVENUESPLIT_ISTAXCLAIMELIGIBILE(FINANCIALTRANSACTIONLINEITEM.ID) = 1
                and FINANCIALTRANSACTION.DELETEDON is null