UFN_PLEDGE_GETSPLITBALANCE

Return

Return Type
money

Parameters

Parameter Parameter Type Mode Description
@PLEDGEID uniqueidentifier IN
@SPLITID uniqueidentifier IN

Definition

Copy


            create function dbo.UFN_PLEDGE_GETSPLITBALANCE
            (
                @PLEDGEID uniqueidentifier,
                @SPLITID uniqueidentifier
            ) 
            returns money
            with execute as caller
            as begin
                declare @RESULT money;

                select 
                    @RESULT = FINANCIALTRANSACTIONLINEITEM.TRANSACTIONAMOUNT 
                            - (coalesce((select sum(INSTALLMENTSPLITPAYMENT.AMOUNT) 
                                    from dbo.INSTALLMENTSPLITPAYMENT 
                                    inner join INSTALLMENTSPLIT on INSTALLMENTSPLITPAYMENT.INSTALLMENTSPLITID = INSTALLMENTSPLIT.ID
                                    where INSTALLMENTSPLITPAYMENT.PLEDGEID = @PLEDGEID and INSTALLMENTSPLIT.REVENUESPLITID = @SPLITID), 0
                                + coalesce((select sum(INSTALLMENTSPLITWRITEOFF.TRANSACTIONAMOUNT) 
                                    from dbo.WRITEOFF 
                                    inner join dbo.INSTALLMENTSPLITWRITEOFF on WRITEOFF.ID = INSTALLMENTSPLITWRITEOFF.WRITEOFFID 
                                    inner join INSTALLMENTSPLIT on INSTALLMENTSPLITWRITEOFF.INSTALLMENTSPLITID = INSTALLMENTSPLIT.ID
                                where WRITEOFF.REVENUEID = @PLEDGEID and INSTALLMENTSPLIT.REVENUESPLITID = @SPLITID), 0))
                from 
                    dbo.FINANCIALTRANSACTIONLINEITEM
                inner join dbo.REVENUESPLIT_EXT on FINANCIALTRANSACTIONLINEITEM.ID = REVENUESPLIT_EXT.ID
                where 
                    FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID = @PLEDGEID
                    and FINANCIALTRANSACTIONLINEITEM.ID = @SPLITID
                    and FINANCIALTRANSACTIONLINEITEM.DELETEDON is null
                    and FINANCIALTRANSACTIONLINEITEM.TYPECODE <> 1;

                return @RESULT;
            end