USP_DATAFORMTEMPLATE_VIEW_PAGE

The load procedure used by the view dataform template "Page 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.
@SYSTEMRECORDID uniqueidentifier INOUT System record ID
@DESCRIPTION nvarchar(1000) INOUT Description
@AUTHOR nvarchar(500) INOUT Author
@DATEADDED datetime INOUT Date added
@DATECHANGED datetime INOUT Date changed
@CONTEXTRECORDTYPENAME nvarchar(50) INOUT Context record type
@EXPRESSIONDATAFORMNAME nvarchar(60) INOUT Expression data form
@EXPRESSIONDATAFORMINSTANCEID uniqueidentifier INOUT Expression data form ID
@INSTALLEDPRODUCTLIST nvarchar(max) INOUT Installed products
@INSTALLED bit INOUT Installed
@NAME nvarchar(60) INOUT Name
@SPECUINAME nvarchar(60) INOUT Name override
@UINAME nvarchar(60) INOUT Display name

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_PAGE
(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @SYSTEMRECORDID uniqueidentifier = null output,
    @DESCRIPTION nvarchar(1000) = null output,
    @AUTHOR nvarchar(500)  = null output,
    @DATEADDED datetime = null output,
    @DATECHANGED datetime = null output,
    @CONTEXTRECORDTYPENAME nvarchar(50) = null output,
    @EXPRESSIONDATAFORMNAME nvarchar(60) = null output,
    @EXPRESSIONDATAFORMINSTANCEID uniqueidentifier = null output,
    @INSTALLEDPRODUCTLIST nvarchar(max) = null output,
    @INSTALLED bit = null output,
    @NAME nvarchar(60) = null output,
    @SPECUINAME nvarchar(60) = null output,
    @UINAME nvarchar(60) = null output
)
as
    set nocount on;
    set @DATALOADED = 0;

    with xmlnamespaces ('bb_appfx_pagedefinition' as tns, 'bb_appfx_commontypes' as common)
    select 
        @DATALOADED = 1,
        @SYSTEMRECORDID = @ID,
        @DESCRIPTION = P.DESCRIPTION,
        @AUTHOR = P.PAGEDEFINITIONSPEC.value('(tns:PageDefinitionSpec/@Author)[1]', 'nvarchar(500)'),
        @DATEADDED = P.DATEADDED,
        @DATECHANGED = P.DATECHANGED,
        @CONTEXTRECORDTYPENAME = coalesce(RT.NAME, ''),
        @EXPRESSIONDATAFORMNAME = 
            (select INSTANCE.FORMNAME 
                from dbo.DATAFORMINSTANCECATALOG as INSTANCE inner join dbo.DATAFORMTEMPLATECATALOG as TEMPLATE on INSTANCE.DATAFORMTEMPLATECATALOGID = TEMPLATE.ID
                where INSTANCE.ID = P.PAGEDEFINITIONSPEC.value('(tns:PageDefinitionSpec/@ExpressionDataFormID)[1]', 'uniqueidentifier')
            ),
        @EXPRESSIONDATAFORMINSTANCEID = P.PAGEDEFINITIONSPEC.value('(tns:PageDefinitionSpec/@ExpressionDataFormID)[1]', 'uniqueidentifier'),
        @INSTALLEDPRODUCTLIST = dbo.UFN_INSTALLEDPRODUCTS_TRANSLATELIST(P.PAGEDEFINITIONSPEC.query('tns:PageDefinitionSpec/common:InstalledProductList')),
        @INSTALLED = dbo.UFN_INSTALLEDPRODUCTS_OPTIONALPRODUCTSINSTALLED(P.PAGEDEFINITIONSPEC.query('tns:PageDefinitionSpec/common:InstalledProductList')),
        @NAME = P.NAME,
        @SPECUINAME = P.SPECUINAME,
        @UINAME = P.UINAME
    from dbo.PAGEDEFINITIONCATALOG AS P
         left join dbo.RECORDTYPE as RT on P.CONTEXTRECORDTYPEID = RT.ID
    where P.ID = @ID;

    return 0;