USP_DATAFORMTEMPLATE_EDITLOAD_MKTSOURCECODELAYOUTPART

The load procedure used by the edit dataform template "Source Code Layout Part Edit Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@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.
@MKTSOURCECODEDEFINITIONTYPES xml INOUT Source code definition types
@ITEMTYPENAME nvarchar(50) INOUT Type
@MKTSOURCECODEPARTDEFINITION uniqueidentifier INOUT Source code part
@MKTSOURCECODEPARTDEFINITIONVALUES xml INOUT Source code part values
@LENGTH tinyint INOUT Length
@SEQUENCE tinyint INOUT Sequence
@SELECTEDVALIDPARTS xml INOUT Selected source code part values
@LAYOUTINUSE bit INOUT Layout in use
@INITIALSOURCECODELENGTH int INOUT

Definition

Copy

CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_MKTSOURCECODELAYOUTPART]
(
  @ID uniqueidentifier,
  @CURRENTAPPUSERID uniqueidentifier,
  @DATALOADED bit = 0 output,
  @TSLONG bigint = 0 output,
  @MKTSOURCECODEDEFINITIONTYPES xml = null output,
  @ITEMTYPENAME nvarchar(50) = null output,
  @MKTSOURCECODEPARTDEFINITION uniqueidentifier = null output,
  @MKTSOURCECODEPARTDEFINITIONVALUES xml = null output,    
  @LENGTH tinyint = null output,
  @SEQUENCE tinyint = null output,
  @SELECTEDVALIDPARTS xml = null output,
  @LAYOUTINUSE bit = null output,
  @INITIALSOURCECODELENGTH int = null output
)
as
  set nocount on;

  set @SELECTEDVALIDPARTS = dbo.[UFN_MKTSOURCECODEVALIDPARTVALUES_GETITEMLIST_TOITEMLISTXML](@ID);

  set @MKTSOURCECODEDEFINITIONTYPES = (
    select 
      [MKTSOURCECODEPARTDEFINITION].[ID] as [MKTSOURCECODEPARTDEFINITIONID],
      [MKTSOURCECODEPARTDEFINITION].[ITEMTYPE]
    from dbo.[MKTSOURCECODEPARTDEFINITION]
    for xml raw('ITEM'),type,elements,root('MKTSOURCECODEDEFINITIONTYPES'),BINARY BASE64
  );

  select
    @DATALOADED = 1,
    @TSLONG = [MKTSOURCECODEITEM].[TSLONG],
    @MKTSOURCECODEPARTDEFINITION = [MKTSOURCECODEITEM].[MKTSOURCECODEPARTDEFINITIONID],
    @LENGTH = [MKTSOURCECODEITEM].[LENGTH],
    @SEQUENCE = [MKTSOURCECODEITEM].[SEQUENCE],
    @ITEMTYPENAME = [MKTSOURCECODEPARTDEFINITION].[ITEMTYPE],
    @INITIALSOURCECODELENGTH = dbo.[UFN_MKTSOURCECODE_GETLENGTH]([SOURCECODEID])
  from dbo.[MKTSOURCECODEITEM]
  inner join dbo.[MKTSOURCECODEPARTDEFINITION] on [MKTSOURCECODEPARTDEFINITION].[ID] = [MKTSOURCECODEITEM].[MKTSOURCECODEPARTDEFINITIONID]
  where [MKTSOURCECODEITEM].[ID] = @ID;

  select 
    @LAYOUTINUSE = dbo.[UFN_MKTSOURCECODE_INUSE]([MKTSOURCECODEITEM].[SOURCECODEID]) 
  from dbo.[MKTSOURCECODEITEM] 
  where [MKTSOURCECODEITEM].[ID] = @ID;

  return 0;