USP_DATAFORMTEMPLATE_EDITLOAD_PDACCOUNTSTRUCTURE

The load procedure used by the edit dataform template "Account Structure 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.
@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.
@DESCRIPTION nvarchar(100) INOUT Segment name
@SEQUENCE int INOUT Sequence
@LENGTH tinyint INOUT Length
@PDACCOUNTTABLESAVAILABLEFORSEGMENTID nvarchar(255) INOUT Friendly Name
@SEPARATORCODE tinyint INOUT Separator
@SEGMENTTYPE tinyint INOUT Segment type
@EXISTINGACCOUNTS bit INOUT
@EXISTINGTRANSACTIONS bit INOUT

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PDACCOUNTSTRUCTURE(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @DESCRIPTION nvarchar(100) = null output,
    @SEQUENCE int = null output,
    @LENGTH tinyint = null output,
    @PDACCOUNTTABLESAVAILABLEFORSEGMENTID nvarchar(255) = null output,
    @SEPARATORCODE tinyint = null output,
  @SEGMENTTYPE tinyint = null output,
  @EXISTINGACCOUNTS bit = null output,
  @EXISTINGTRANSACTIONS bit = null output
)
as

    set nocount on;

    -- be sure to set these, in case the select returns no rows
    set @DATALOADED = 0
    set @TSLONG = 0

    -- populate the output parameters, which correspond to fields on the form.  Note that
    -- we set @DATALOADED = 1 to indicate that the load was successful.  Otherwise, the system
    -- will display a "no data loaded" message.  Also note that we fetch the TSLONG so that concurrency
    -- can be considered.
    select
        @DATALOADED = 1,
        @TSLONG = TSLONG,        
        @DESCRIPTION = [DESCRIPTION],
        @SEQUENCE = SEQUENCE,
        @LENGTH = LENGTH,
        @PDACCOUNTTABLESAVAILABLEFORSEGMENTID = PDACCOUNTTABLESAVAILABLEFORSEGMENTID,
        @SEPARATORCODE = SEPARATORCODE,
    @SEGMENTTYPE = SEGMENTTYPE,
    @EXISTINGACCOUNTS = dbo.UFN_GLACCOUNT_EXISTS()
    from dbo.PDACCOUNTSTRUCTURE
    where ID = @ID

  set @EXISTINGTRANSACTIONS = '0'
    select @EXISTINGTRANSACTIONS = '1' 
    from dbo.GLACCOUNT 
    inner join dbo.JOURNALENTRY on JOURNALENTRY.GLACCOUNTID = GLACCOUNT.ID
    option (recompile)

    return 0;