USP_DATAFORMTEMPLATE_VIEW_PROGRAMGROUPDETAIL

The load procedure used by the view dataform template "Program Group Detail View 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
@DESCRIPTION nvarchar(255) INOUT Description
@SELECTIONNAME nvarchar(100) INOUT Selection
@PROGRAMS xml INOUT programs
@PRICES xml INOUT Prices

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_PROGRAMGROUPDETAIL
(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
  @NAME nvarchar(100) = null output,
  @DESCRIPTION nvarchar(255) = null output,
  @SELECTIONNAME nvarchar(100) = null output,
  @PROGRAMS xml = null output,
  @PRICES xml = null output
)
as
    set nocount on;

  declare @SELECTIONID uniqueidentifier

    set @DATALOADED = 0;

    select @DATALOADED = 1,
           @NAME = NAME,
           @DESCRIPTION = DESCRIPTION,
       @SELECTIONID = IDSETREGISTERID,
       @SELECTIONNAME = dbo.UFN_IDSET_GETNAME(IDSETREGISTERID)
    from dbo.PROGRAMGROUP
    where ID = @ID

  if @SELECTIONID is null
    set @PROGRAMS = dbo.UFN_PROGRAMGROUP_GETPROGRAMS_TOITEMLISTXML(@ID)
  else
    set @PROGRAMS = (
      select null as ID, 
            ID as PROGRAMID,
            dbo.UFN_PROGRAM_GETNAME(ID) as NAME
            from (select PROGRAM.ID as ID
                  from dbo.UFN_IDSETREADER_GETRESULTS_GUID(@SELECTIONID) as SELECTIONRESULT
                  inner join dbo.PROGRAM on PROGRAM.ID = SELECTIONRESULT.ID
            ) as SELECTION
      order by NAME
      for xml raw('ITEM'),type,elements,root('PROGRAMS'),BINARY BASE64
    )
  set @PRICES = (
    select ID, PRICETYPE, FACEPRICE, SEQUENCE from dbo.UFN_PROGRAMGROUP_GETPRICES(@ID)
    order by SEQUENCE
    for xml raw('ITEM'),type,elements,root('PRICES'),BINARY BASE64
  )

    return 0;