USP_DATAFORMTEMPLATE_EDITLOAD_MKTASKLADDER

The load procedure used by the edit dataform template "Ask Ladder 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.
@NAME nvarchar(100) INOUT Name
@CURRENCYSYMBOL nvarchar(3) INOUT Currency symbol
@RECORDSOURCEID uniqueidentifier INOUT Record source
@OBJECTKEY nvarchar(400) INOUT Amount field
@HIDERECORDSOURCE bit INOUT
@INUSE bit INOUT In use?
@ITEMLIST xml INOUT Ask ladder
@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.
@BASECURRENCYID uniqueidentifier INOUT Currency ID
@BASECURRENCY nvarchar(110) INOUT Currency
@SITEID uniqueidentifier INOUT Site
@SITEREQUIRED bit INOUT Site required?
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_MKTASKLADDER]
(
  @ID uniqueidentifier,
  @DATALOADED bit = 0 output,
  @NAME nvarchar(100) = null output,
  @CURRENCYSYMBOL nvarchar(3) = null output,
  @RECORDSOURCEID uniqueidentifier = null output,
  @OBJECTKEY nvarchar(400) = null output,
  @HIDERECORDSOURCE bit = null output,
  @INUSE bit = null output,
  @ITEMLIST xml = null output,
  @TSLONG bigint = 0 output,
  @BASECURRENCYID uniqueidentifier = null output,
  @BASECURRENCY nvarchar(110) = null output,
  @SITEID uniqueidentifier = null output,
  @SITEREQUIRED bit = null output,
  @CURRENTAPPUSERID uniqueidentifier = null
)
as
  set nocount on;

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

  select 
    @DATALOADED = 1,
    @NAME = [NAME],
    @RECORDSOURCEID = [RECORDSOURCEID],
    @OBJECTKEY = [OBJECTKEY],   
    @BASECURRENCYID = [BASECURRENCYID],
    @BASECURRENCY = dbo.[UFN_CURRENCY_GETDESCRIPTION]([BASECURRENCYID]),
    @CURRENCYSYMBOL = [CURRENCYSYMBOL],
    @INUSE = dbo.[UFN_MKTASKLADDER_ISINUSE](@ID),
    @ITEMLIST = dbo.[UFN_MKTASKLADDER_GETITEMLIST_TOITEMLISTXML]([ID]),
    @TSLONG = [TSLONG],
    @SITEID = [SITEID]
  from dbo.[MKTASKLADDER]
  where [ID] = @ID;

  if @DATALOADED = 1 and dbo.[UFN_CONDITIONSETTING_EVALUATEEXISTSCONDITION]('Multicurrency') = 1
    -- overwrite the currency symbol in the obsolete field with the symbol for the base currency

    select @CURRENCYSYMBOL = [CURRENCYSYMBOL] from dbo.[CURRENCY] where [ID] = @BASECURRENCYID;

  if (select count(1) from dbo.[MKTRECORDSOURCE] where dbo.[UFN_MKTRECORDSOURCE_VALIDFORPRODUCT]([MKTRECORDSOURCE].[ID]) = 1) > 1
    set @HIDERECORDSOURCE = 0
  else
    set @HIDERECORDSOURCE = 1;

  set @SITEREQUIRED = dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '7E01077A-387A-480E-B70D-FF33897FDBFA', 1);

  return 0;