USP_DATAFORMTEMPLATE_EDITLOAD_WRITEOFFGLDISTRIBUTIONADJUST

The load procedure used by the edit dataform template "Posted Write-off GL Distribution Edit 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.
@GLDISTRIBUTION xml INOUT Write-off GL distribution
@ADJUSTMENTDATE datetime INOUT Adjusted Date
@ADJUSTMENTPOSTDATE datetime INOUT Adjusted Post Date
@ADJUSTMENTPOSTSTATUSCODE tinyint INOUT Post Status Code
@ADJUSTMENTREASON nvarchar(300) INOUT Adjustment reason
@WRITEOFFAMOUNT money INOUT Write-off amount
@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.

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_WRITEOFFGLDISTRIBUTIONADJUST
                (
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @GLDISTRIBUTION xml = null output,                    
                    @ADJUSTMENTDATE datetime = null output,
                    @ADJUSTMENTPOSTDATE datetime = null output,
                    @ADJUSTMENTPOSTSTATUSCODE tinyint = null output,
                    @ADJUSTMENTREASON nvarchar(300) = null output,
                    @WRITEOFFAMOUNT money = null output,                        
                    @TSLONG bigint = 0 output
                )
                AS
                BEGIN                                                
                    set nocount on;

                    set @DATALOADED = 0;
                    set @TSLONG = 0;

                    select  @ADJUSTMENTDATE = getdate(),
                            @ADJUSTMENTPOSTDATE = getdate(),
                            @ADJUSTMENTPOSTSTATUSCODE = 0;                            

                    select
                        @ADJUSTMENTDATE = ADJUSTMENT.DATE,
                        @ADJUSTMENTPOSTDATE = ADJUSTMENT.POSTDATE,
                        @ADJUSTMENTPOSTSTATUSCODE = 1,
                        @ADJUSTMENTREASON = ADJUSTMENT.REASON                        
                    from dbo.WRITEOFFADJUSTMENT as ADJUSTMENT
                    where WRITEOFFID = @ID and ADJUSTMENT.POSTSTATUSCODE = 1;

                    select @WRITEOFFAMOUNT = sum(AMOUNT) from dbo.WRITEOFFSPLIT where WRITEOFFID = @ID;

                    select @GLDISTRIBUTION = dbo.UFN_REVENUE_GETWRITEOFFGLDISTRIBUTION_TOITEMLISTXML(@ID);

                    if @GLDISTRIBUTION is not null 
                        begin                          
                            set @DATALOADED = 1;
                            select @TSLONG = max(tslong) from dbo.WRITEOFFGLDISTRIBUTION where WRITEOFFID = @ID;
                        end

                    return 0;                    
                END