USP_DATAFORMTEMPLATE_EDITLOAD_RECEIVABLECREDITAPPLICATIONS

The load procedure used by the edit dataform template "Receivable Credit Applications Edit Data Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@APPLICATIONS xml INOUT Applications
@AMOUNTREMAINING money INOUT Amount left to apply

Definition

Copy


                    create procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECEIVABLECREDITAPPLICATIONS
                    (
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @TSLONG bigint = 0 output,
                          @APPLICATIONS xml = null output,
                        @AMOUNTREMAINING money = null output
                    )
                    as
                        set nocount on;

                        set @DATALOADED = 0
                        set @TSLONG = 0

                        declare @RECEIVABLECREDITLINEITEMID uniqueidentifier;
                        select top 1 @RECEIVABLECREDITLINEITEMID = FINANCIALTRANSACTIONLINEITEM.ID
                        from FINANCIALTRANSACTION
                            inner join FINANCIALTRANSACTIONLINEITEM
                                on FINANCIALTRANSACTION.ID = FINANCIALTRANSACTIONLINEITEM.FINANCIALTRANSACTIONID
                        where (FINANCIALTRANSACTION.ID = @ID) and
                                (FINANCIALTRANSACTIONLINEITEM.DELETED = 0) and
                                (FINANCIALTRANSACTIONLINEITEM.TYPECODE = 0);

                        select   
                            @DATALOADED = 1,
                            @APPLICATIONS = dbo.UFN_RECEIVABLECREDITAPPLICATIONS_TOITEMLISTXML(@RECEIVABLECREDITLINEITEMID, 1),
                            @AMOUNTREMAINING = FINANCIALTRANSACTIONLINEITEM_RECEIVABLECREDIT.AMOUNT - sum(isnull(FINANCIALTRANSACTIONLINEITEM_APPLICATION.AMOUNT, 0))
                        from dbo.FINANCIALTRANSACTIONLINEITEM as FINANCIALTRANSACTIONLINEITEM_RECEIVABLECREDIT
                            left outer join dbo.FINANCIALTRANSACTIONLINEITEMAPPLICATION
                                on FINANCIALTRANSACTIONLINEITEMAPPLICATION.SOURCELINEITEMID = FINANCIALTRANSACTIONLINEITEM_RECEIVABLECREDIT.ID
                            left outer join dbo.FINANCIALTRANSACTIONLINEITEM as FINANCIALTRANSACTIONLINEITEM_APPLICATION
                                on (FINANCIALTRANSACTIONLINEITEM_APPLICATION.ID = FINANCIALTRANSACTIONLINEITEMAPPLICATION.ID) and
                                    (FINANCIALTRANSACTIONLINEITEM_APPLICATION.DELETED = 0)
                        where (FINANCIALTRANSACTIONLINEITEM_RECEIVABLECREDIT.ID = @RECEIVABLECREDITLINEITEMID)
                        group by FINANCIALTRANSACTIONLINEITEM_RECEIVABLECREDIT.AMOUNT;

                        select @TSLONG = max(FINANCIALTRANSACTIONLINEITEMAPPLICATION.TSLONG)
                        from dbo.FINANCIALTRANSACTIONLINEITEMAPPLICATION
                        where (FINANCIALTRANSACTIONLINEITEMAPPLICATION.SOURCELINEITEMID = @ID);

                        return 0;