USP_DATAFORMTEMPLATE_ADD_MKTASKLADDER_PRELOAD

The load procedure used by the edit dataform template "Ask Ladder Add Form"

Parameters

Parameter Parameter Type Mode Description
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@RECORDSOURCEID uniqueidentifier INOUT Record source
@HIDERECORDSOURCE bit INOUT
@BASECURRENCYID uniqueidentifier INOUT Currency ID
@BASECURRENCY nvarchar(110) INOUT Currency
@ITEMLIST xml INOUT Ask ladder
@SITEID uniqueidentifier INOUT Site
@SITEREQUIRED bit INOUT Site required?

Definition

Copy


CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_MKTASKLADDER_PRELOAD]
(
  @CURRENTAPPUSERID uniqueidentifier,
  @RECORDSOURCEID uniqueidentifier = null output,
  @HIDERECORDSOURCE bit = null output,
  @BASECURRENCYID uniqueidentifier = null output,
  @BASECURRENCY nvarchar(110) = null output,
  @ITEMLIST xml = null output,
  @SITEID uniqueidentifier = null output,
  @SITEREQUIRED bit = null output
)
as
  set nocount on;

  declare @T1 table([VALUE] uniqueidentifier, [LABEL] nvarchar(255));

  /* if there is only one valid record source, then default it */
  insert into @T1 exec dbo.[USP_SIMPLEDATALIST_MKTRECORDSSOURCE] @CURRENTAPPUSERID;
  if @@ROWCOUNT = 1
    select @RECORDSOURCEID = [VALUE] from @T1;

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

  set @BASECURRENCYID = dbo.[UFN_APPUSER_GETBASECURRENCY](@CURRENTAPPUSERID);
  set @BASECURRENCY = dbo.[UFN_CURRENCY_GETDESCRIPTION](@BASECURRENCYID);

  /* Need to set the base currency in the item list for the currency to set properly on the edit grid. */
  declare @ITEMLISTTABLE table (
    [ID] uniqueidentifier,
    [BASECURRENCYID] uniqueidentifier,
    [MINIMUMENTRYAMOUNT] decimal(20, 4),
    [TYPECODE] tinyint,
    [ITEMVALUE1] decimal(20, 4),
    [ITEMVALUE2] decimal(20, 4),
    [ITEMVALUE3] decimal(20, 4),
    [ITEMVALUE4] decimal(20, 4),
    [ITEMVALUE5] decimal(20, 4),
    [WRITEINTEXT] nvarchar(100),
    [ROUNDTOAMOUNT] decimal(20, 4)
  );

  insert into @ITEMLISTTABLE
  (
    [ID],
    [BASECURRENCYID],
    [MINIMUMENTRYAMOUNT],
    [TYPECODE],
    [ITEMVALUE1],
    [ITEMVALUE2],
    [ITEMVALUE3],
    [ITEMVALUE4],
    [ITEMVALUE5],
    [WRITEINTEXT],
    [ROUNDTOAMOUNT]
  )
  select null, @BASECURRENCYID, 0, 2, null, null, null, null, null, '', 0;

  set @ITEMLIST = (
    select
      [ID],
      [BASECURRENCYID],
      [MINIMUMENTRYAMOUNT],
      [TYPECODE],
      [ITEMVALUE1],
      [ITEMVALUE2],
      [ITEMVALUE3],
      [ITEMVALUE4],
      [ITEMVALUE5],
      [WRITEINTEXT],
      [ROUNDTOAMOUNT]
    from @ITEMLISTTABLE
    for xml raw('ITEM'), type, elements, root('ITEMLIST'), binary base64);

  set @SITEID = dbo.[UFN_APPUSER_DEFAULTSITEFORUSER](@CURRENTAPPUSERID);
  set @SITEREQUIRED = dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, '676EC3A0-ACA2-4429-ABEB-1F90116B93BA', 1);

  return 0;