Data Table Column XML

Author:JonK
Last Updated:March 16, 2016 1:51 PM

Introduction

I like to script Data Schemas and Tables manually. I believe we have a utility that helps with this, but I haven't reviewed it or trust it. Plus, this gives me the most flexibility to setup Lookups and Data Sites programatically. As a result I need a reference. We have 17 table column types, and many have special XML config to remember.

This document is my reference to help construct table columns in SQL code.

~Jon

General 

Declare an XML variable for each column. 

DECLARE @col1Name NVARCHAR(50) = '';
DECLARE @col1 XML = CONVERT(XML, '<!-- XML goes here -->');

The sections that follow describe the XML for each column type.

Keep in mind that you'll need to make changes to the given XML, including:

  • Replace Sequence with positive incrementing values for ordering columns
  • If its a Linked Property column:
    • Change XPathExtractor
    • Change XPathName
    • Add <LinkedToProperty></LinkedToProperty> after ControlConfig
    • If using MetatagKeywords, change CustomXPathFunction to Prop_PackageKeywords
    • If using a RawXML column with a linked property, change CustomXPathFunction to SFGetEditValue
    • If using a Links or Files column with a linked property, change CustomXPathFunction to ItemList_PackageDataAsText

Freeform

DataControlTypeID = 1

Supports: None

<Column ID="1">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Freeform]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>1</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="1">
                            <Name>IFrameWidth</Name>
                            <Config>
                                <DefaultValue>95%</DefaultValue>
                            </Config>
                        </Type>
                        <Type ID="1">
                            <Name>IFrameHeight</Name>
                            <Config>
                                <DefaultValue>150px</DefaultValue>
                            </Config>
                        </Type>
                        <Type ID="1">
                            <Name>CssFile</Name>
                            <Config>
                                <DefaultValue/>
                            </Config>
                        </Type>
                        <Type ID="1">
                            <Name>CssClass</Name>
                            <Config>
                                <DefaultValue>Freeform</DefaultValue>
                            </Config>
                        </Type>
                        <Type ID="2">
                            <Name>UI</Name>
                            <Config>
                                <DefaultValue>Popup</DefaultValue>
                            </Config>
                        </Type>
                        <Type ID="2">
                            <Name>Toolbar</Name>
                            <Config>
                                <DefaultValue>Default</DefaultValue>
                            </Config>
                        </Type>
                        <Type ID="2">
                            <Name>Template</Name>
                            <Config>
                                <DefaultValue>Freeform</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>0</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>freeform</DisplayInputType>
        </Control>
    </Config>
</Column>

Text (1 line)

DataControlTypeID = 2

Supports: Sort, Compare (Relationships), Keyword, Range

<Column ID="2">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Text (1 line)]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>2</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>textbox</DisplayInputType>
        </Control>
    </Config>
</Column>

Text Area

DataControlTypeID = 3

Supports: Keyword

<Column ID="3">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Text Area]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>3</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="1">
                            <Name>Rows</Name>
                            <Config>
                                <DefaultValue>3</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>textarea</DisplayInputType>
        </Control>
    </Config>
</Column>

File (single)

DataControlTypeID = 3

Supports: None

Change Source to one of: FilePiles, Images, ImagesNoSize, Videos

<Column ID="4">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[File (single)]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>4</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="2">
                            <Name>Source</Name>
                            <Config>
                                <DefaultValue>FilePiles</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>filepicker</DisplayInputType>
        </Control>
    </Config>
</Column>

File (multiple)

DataControlTypeID = 5

Supports: None

Change Source to one of: FilePiles, Images, ImagesNoSize, Videos

<Column ID="5">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[File (multiple)]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>5</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="2">
                            <Name>Source</Name>
                            <Config>
                                <DefaultValue>FilePiles</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>multifilepicker</DisplayInputType>
        </Control>
    </Config>
</Column>

External Key

DataControlTypeID = 6

Supports: Compare (Relationships; default on), Keyword

<Column ID="6">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[External Key]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>6</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>1</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>textbox</DisplayInputType>
        </Control>
    </Config>
</Column>

Links

DataControlTypeID = 7

Supports: Compare (Relationships; default on)

<Column ID="7">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Links]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>7/ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="5">
                            <Name>Source</Name>
                            <Config>
                                <DefaultValue />
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>1</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>linkpicker</DisplayInputType>
        </Control>
    </Config>
</Column>

Checkbox

DataControlTypeID = 8

Supports: Sort

Change text in DefaultValue for LabelText

Change state Unchecked|Checked for DefaultState

<Column ID="8">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Checkbox]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>8</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="1">
                            <Name>LabelText</Name>
                            <Config>
                                <DefaultValue/>
                            </Config>
                        </Type>
                        <Type ID="2">
                            <Name>DefaultState</Name>
                            <Config>
                                <DefaultValue>Unchecked</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>checkbox</DisplayInputType>
        </Control>
    </Config>
</Column>

Lookup

DataControlTypeID = 9

Supports: Compare (Relationships; default on), Category Filtering (default on)

<Column ID="9">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Lookup]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>9</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="3">
                            <Name>LookupSource</Name>
                            <Config>
                                <DefaultValue>' + CONVERT(NVARCHAR(4), @tag1ID) + '</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>1</AllowCompare>
            <AllowFilterCategory>1</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>tags</DisplayInputType>
            <LinkedToProperty>Lookups</LinkedToProperty>
        </Control>
    </Config>
</Column>

Radio buttons

DataControlTypeID = 10

Supports: Sort, Compare (Relationships; default on), Range

Change the options

DisplayInputType can be dropdown or radio

<Column ID="10">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Radio buttons]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>10</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="4">
                            <Name>CmsFormItems</Name>
                            <Config>
                                <DefaultValue>
                                    <Option Value="DB Value">option label text</Option>
                                </DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>1</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>dropdown</DisplayInputType>
        </Control>
    </Config>
</Column>

Date

DataControlTypeID = 11

Supports: Sort, Range 

<Column ID="11">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Date]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>11</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>date</DisplayInputType>
        </Control>
    </Config>
</Column>

Date and Time

DataControlTypeID = 12

Supports: Sort, Range

<Column ID="12">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Date and Time]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>12</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>datetime</DisplayInputType>
        </Control>
    </Config>
</Column>

Number (Decimal/Currency)

DataControlTypeID = 13

Supports: Sort, Range

<Column ID="13">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Number (Decimal/Currency)]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>13</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction>Wkst_ValueIsCurrencyOptional</ValidatorFunction>
                        <ErrorMessageFunction>Wkst_MustBeDecimalNumber</ErrorMessageFunction>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>textbox</DisplayInputType>
        </Control>
    </Config>
</Column>

Raw XML

DataControlTypeID = 14

Supports: None

requires CustomXPathFuntion SFGetEditValue

<Column ID="14">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Raw XML]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>14</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction>SFGetEditValue</CustomXPathFunction>
                    </BaseParams>
                    <CustomParams>
                        <Type ID="1">
                            <Name>Rows</Name>
                            <Config>
                                <DefaultValue>3</DefaultValue>
                            </Config>
                        </Type>
                    </CustomParams>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>xmltextarea</DisplayInputType>
        </Control>
    </Config>
</Column>

Geographic Coordinate

DataControlTypeID = 15

Supports: None

<Column ID="15">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Geographic Coordinate]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>15</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>latlong</DisplayInputType>
        </Control>
    </Config>
</Column>

Number (Integer)

DataControlTypeID = 16

Supports: Sort, Compare (Relationships; default on), Range

<Column ID="16">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Number (Integer)]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>16</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction>Wkst_ValueIsNumberOptional</ValidatorFunction>
                        <ErrorMessageFunction>Wkst_MustBeNumber</ErrorMessageFunction>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>1</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>textbox</DisplayInputType>
        </Control>
    </Config>
</Column>

Date and Time w/ Recurrence

DataControlTypeID = 17

Supports: Sort, Range

<Column ID="17">
    <Name><![CDATA[' + @col1Name + ']]></Name>
    <ColumnName><![CDATA[Date and Time w/ Recurrence]]></ColumnName>
    <Config>
        <Control>
            <SchemaID>' + CONVERT(NVARCHAR(4), @schemaID) + '</SchemaID>
            <ColumnID>-1</ColumnID>
            <TableID>' + CONVERT(NVARCHAR(4), @tableID) + '</TableID>
            <Name>' + @col1Name + '</Name>
            <Description>' + @col1Name + '</Description>
            <Sequence>1</Sequence>
            <ControlTypeID>17</ControlTypeID>
            <ControlConfig>
                <Config>
                    <CssStyles/>
                    <BaseParams>
                        <Label/>
                        <Title/>
                        <FriendlyName>' + @col1Name + '</FriendlyName>
                        <XPathExtractor>/Content/Article/' + @schemaPrefix + '.' + @tableNameSingular + '/' + @col1Name + '</XPathExtractor>
                        <XPathName>' + @col1Name + '</XPathName>
                        <ValidatorFunction/>
                        <ErrorMessageFunction/>
                        <ChangeDetectorFunction/>
                        <ChangeMessageFunction/>
                        <DefaultValueExtractor/>
                        <ValueExtractor/>
                        <CustomXPathFunction/>
                    </BaseParams>
                    <CustomParams/>
                </Config>
            </ControlConfig>
            <AllowList>1</AllowList>
            <AllowDetail>1</AllowDetail>
            <AllowUpload>1</AllowUpload>
            <AllowSort>0</AllowSort>
            <AllowCompare>0</AllowCompare>
            <AllowFilterCategory>0</AllowFilterCategory>
            <AllowFilterKeyword>0</AllowFilterKeyword>
            <AllowFilterRange>0</AllowFilterRange>
            <AllowWkstEdit>1</AllowWkstEdit>
            <AllowWkstImport>1</AllowWkstImport>
            <DisplayInputType>datetimerecur</DisplayInputType>
        </Control>
    </Config>
</Column>
top