Exago Logo
Search
Generic filters
Exact matches only

Config File XML Reference (All Nodes but General)

This reference guide describes the structure of the config file XML elements. Use this guide if you build or edit your config XML directly, without using the Admin Console.

Tip

For the settings nodes within <general></general>, see Config File XML & API Setting Reference (General Nodes).

The config file’s outer nodes are as follows:

<?xml version="1.0" standalone="yes"?>
<webreports></webreports>

All following nodes are within the <webreports> element. They are organized below in alphabetical order, not necessarily the order they appear in the configuration file.

How to Use This Document

XML objects are represented in tables with the following format:

NodeDescriptionTypeRequired

Node is the XML node name. Nodes in bold font are objects, which are represented below the table.

Description is the name of the field as it appears in the Admin Console. If there is no mapped field, or the field is implicit, the description is in italic font.

Type is the value type. If the type is a constant or enum, the possible values are listed below the table. Constants are case sensitive.

Required indicates whether the node requires a value. (1+) indicates that there can be multiple nodes.

Action Events

The Introduction to Action Events article includes detailed descriptions of each of these settings.

Outer node: <actionevent></actionevent>

NodeDescriptionTypeRequired
nameNamestringyes
idUnique Idintyes
event_typeGlobal Event Typeconstantyes
datasource_idId of assembly data sourceintno
func_nameAssembly function namestringno
user_actionEvent Typeconstantyes
languageLanguageconstantno
program_codeProgram codestringno
uiactionAssigned UI Item(s)objectno (1+)
referenceReferencesobjectno (1+)
namespaceNamespacesobjectno (1+)

Possible values for event_type: None, or see Global Action Events.

Possible values for user_action: None, Load, Click

Possible values for language: CSharp, JavaScript, VB

uiaction

NodeDescriptionTypeRequired
element_idElement Idconstantyes

Possible values for element_id: See Identifying Actionable UI Elements.

reference

NodeDescriptionTypeRequired
nameReference namestringyes

namespace

NodeDescriptionTypeRequired
nameNamespace namestringyes

Example

<actionevent>
  <name>DoubleClick</name>
  <id>0</id>
  <event_type>OnDoubleClickReport</event_type>
  <user_action>Click</user_action>
  <language>CSharp</language>
  <program_code>return Extensions.ActionEvents.DoubleClick(sessionInfo);</program_code>
  <uiaction>
    <element_id>RunReportBtn</element_id>
  </uiaction>
  <reference>
    <name>Extensions.dll</name>
  </reference>
</actionevent>

Custom Options

The Custom Options article includes detailed descriptions of each of these settings.

Outer node: <customoption></customoption>

NodeDescriptionTypeRequired
option_idIdstringyes
option_typeTypeconstantyes
option_list_itemOption list itemobjectno (1+)

Possible values for option_type: Int, Decimal, Bool, Text, List

option_list_item

NodeDescriptionTypeRequired
option_list_item_idList item Idstringyes

Example

<customoption>
  <option_id>Hello</option_id>
  <option_type>List</option_type>
  <option_list_item>
    <option_list_item_id>World</option_list_item>
  </option_list_item>
</customoption>

Data Sources

The Data Sources article includes detailed descriptions of each of these settings.

Outer node: <datasource></datasource>

NodeDescriptionTypeRequired
idUnique Idintyes
nameNamestringyes
dbtypeTypeconstantyes
dataconnstrConnection Stringstringyes
schemaSchema/Owner Namestringno
odbcdelimColumn Delimiter(s)stringno

Possible values for dbtype: mssql, oracle, msolap, odbc, websvc, assembly, mysql, file, postgres, db2, informix, cdata

Example

<datasource>
  <id>0</id>
  <name>Northwind</name>
  <dbtype>odbc</dbtype>
  <schema>dbo</dbtype>
  <dataconnstr>DRIVER=SQLite3 ODBC Driver;Database=C:Northwind.sqlite;</dataconnstr>
  <odbcdelim>`</odbcdelim>
</datasource>

Data Objects

The Data Objects article includes detailed descriptions of each of these settings.

When a Data Object is a clone of another only the id, entity_name, cloned_from, inherit_category and inherit_description, category, object_description and db_name apply.

Outer node: <entity></entity>

NodeDescriptionTypeRequired
idIdstringno
entity_nameAliasstringno
cloned_fromv2019.1+ <id> of the parent data object that this one is a clone of.stringno
inherit_categoryv2019.2.18+ Inherit Folder

For cloned data objects, true if the category/folder the object appears in should be copied from its parent. False if the clone should have its own category folder. If false, <category> must be provided.

booleanno
inherit_descriptionv2019.2.18+ Inherit Description

For cloned data objects, true if the description of the clone should be copied from its parent. False if the clone should have its own description. If false, <object_description> must be provided.

booleanno
db_nameName

For cloned data objects, a value here overrides the object in the Data Source (i.e. table, view) this clone points to while continuing to use the same metadata as its cloned_from object.

stringyes
sql_stmtCustom SQL Objectstringno
object_descriptionDescriptionstringno
categoryCategorystringno
datasource_idId of data sourceintyes
object_typeObject typeconstantyes
schema_access_typeSchema Access Typeconstantno
keyUnique Key Fieldsobjectyes (1+)
paramParametersobjectno (1+)
tenantTenant Columnsobjectno (1+)
filter_dropdownFilter Dropdown Objectobjectno
column_metadataColumn Metadataobjectno (1+)
transformVertical table transformobjectno
affinityv2018.1+ Report or config affinityconstantno
suppress_sort_filterv2018.1+Suppress Sort and Filterbooleanno
canreexecuteindbv2021.1 Interactive Filtering in Databasebooleanno

Possible values for object_type: table, view, procedure, function, assembly, sqlstmt, websvc, file

Possible values for schema_access_type: Metadata, Datasource

Possible values for affinity: Global, Report

key

NodeDescriptionTypeRequired
col_nameColumn namestringyes

param

NodeDescriptionTypeRequired
idParameter namestringyes

tenant

NodeDescriptionTypeRequired
col_nameColumn namestringyes
parameter_idParameter namestringyes

filter_dropdown

NodeDescriptionTypeRequired
db_nameData object namestringyes
sql_stmtSQL statementstringno
datasource_idId of data sourceintyes
object_typeObject typeconstantyes

Possible values for object_type: table, view, procedure, function, assembly, sqlstmt, websvc, file

column_metadata

NodeDescriptionTypeRequired
col_sourceSpecify as custom colconstantno
col_nameColumn namestringyes
col_descriptionColumn Descriptionstringno
col_typeData Typeconstantno
col_aliasColumn Aliasstringno
visibleVisibleboolno
filterableFilterableconstantno
sortableSortableboolno
col_sortandgroupbyvalueSort and Group-By Valuestringno
col_valueColumn Valuestringno

Possible values for col_source: ExagoFormula

Possible values for col_type: string, date, datetime, time, int, decimal, image, float, boolean, guid, currency

Possible values for filterable: All, Dynamic, Static, None

transform

NodeDescriptionTypeRequired
col_nameData field names columnstringyes
val_nameData values columnstringyes
datatype_nameData types columnstringno
non_transform_colFields exempt from transformobjectno

non_transform_col

NodeDescriptionTypeRequired
col_nameData field namestringyes
data_typeData typeenumno

Possible values for data_type: 0: string, 1: date, 2: datetime, 3: time, 4: integer, 5: decimal, 6: float, 7: bit, 8: guid, 9: image, 10: currency

Example

<entity>
  <id>ODE</id>
  <entity_name>OrderDetails</entity_name>
  <db_name>OrderDetail</db_name>
  <sql_stmt>SELECT *</sql_stmt>
  <category>Order Information</category>
  <datasource_id>1</datasource_id>
  <object_type>table</object_type>
  <key>
    <col_name>OrderId</col_name>
  </key>
  <key>
    <col_name>ProductId</col_name>
  </key>
  <param>
    <id>count</id>
  </param>
  <tenant>
    <col_name>CategoryName</col_name>
    <parameter_id>count</parameter_id>
  </tenant>
  <filter_dropdown>
    <db_name>Category</db_name>
    <sql_stmt>SELECT *</sql_stmt>
    <datasource_id>-1</datasource_id>
    <object_type>table</object_type>
  </filter_dropdown>
  <column_metadata>
    <col_source>ExagoFormula</col_source>
    <col_name>Total</col_name>
    <col_type>currency</col_type>
    <col_alias>Total</col_alias>
    <filterable>false</filterable>
    <col_value>{ODE.Quantity}*({ODE.UnitPrice}-{ODE.Discount})</col_value>
  </column_metadata>
  <column_metadata>
    <col_name>UnitPrice</col_name>
    <col_type>currency</col_type>
  </column_metadata>
</entity>

Functions

The following articles include detailed descriptions of each of these settings

Outer node: <function></function>

Note

Functions and Filter Functions use the same XML syntax. Filter functions have weight > 0 (which indicates its order in the filter list).

NodeDescriptionTypeRequired
nameNamestringyes
descriptionDescriptionstringno
categoryCategoryconstantno
min_argspre-v2017.2 Minimum Number of Argumentsintno
max_argspre-v2017.2 Maximum Number of Argumentsintno
arguments_jsonv2017.2+ Arguments informationjson objectyes
variable_argumentsv2017.2+ Variable Argument Countboolyes
available_inFormula, filter or custom aggregateenumyes
filter_return_typeFilter Typeconstantno
weightList Orderintyes
languageLanguageconstantyes
program_codeProgram Codestringyes
disable_database_groupingv2019.1.5+ Prevent In-Database Grouping When Included in Detail Sectionboolyes
referenceReferencesobjectno (1+)
namespaceNamespacesobjectno (1+)

Possible values for category: Aggregate, Operators, Logical, Date, Financial, Database, Arithmetic, String, Formatting, Other

Possible values for available_in:

  1. Unavailable
  2. Formula
  3. Filter
  4. Aggregate

Possible values for filter_return_type: date, string, integer, decimal

Possible values for language: CSharp, JavaScript, VB

reference

NodeDescriptionTypeRequired
nameReference namestringyes

namespace

NodeDescriptionTypeRequired
nameNamespace namestringyes

arguments_json v2017.2+

A JSON-formatted array of objects with the following format:

NodeDescriptionTypeRequired
NameNamestringyes
RequiredRequiredboolyes
DescriptionDescriptionstringyes

Example

<function>
  <name>IncrementBy</name>
  <description>Count up by value steps.</description>
  <category>Other</category>
  <arguments_json>[{"Name":"counter","Required":false,"Description":"Number to increment by. Default: 1."}]</arguments_json>
  <variable_arguments>false</variable_arguments>
  <available_in>1</available_in>
  <filter_return_type>String</filter_return_type>
  <weight>0</weight>
  <language>CSharp</language>
  <program_code>return Extensions.CustomFunctions.IncrementBy(sessionInfo, args);</program_code>
  <reference>
    <name>Extensions.dll</name>
  </reference>
</function>

Joins

The Join Configuration article includes detailed descriptions of each of these settings.

Outer node: <join></join>

Note

For entity names, use Id if set, otherwise use db_name.

NodeDescriptionTypeRequired
entity_from_nameFrom object (left) stringyes
entity_to_nameTo object (right)stringyes
join_typeJoin Typeconstantyes
relation_typeRelation Typeconstantyes
weightWeightintyes
joincolpre-v2017.2 Join Columnsobjectyes (1+)
clausev2017.2+ Join Clauseobjectyes (1+)
affinityv2018.1+ Join affinityconstantyes

Possible values for join_type: inner, leftouter, rightouter, fullouter

Possible values for relation_type: 11: one to one, 1M: one to many

Possible values for affinity: Global, Report

joincol (deprecated in v2017.2)

NodeDescriptionTypeRequired
col_from_nameFrom column (left)stringyes
col_to_nameTo column (right)stringyes

clause v2017.2+

NodeDescriptionTypeRequired
left_entityFrom object (left) (v2017.3+)stringno
left_sideFrom expression (left)stringyes
right_sideTo expression (right)stringyes
conjunctionJoining conjunctionconstantyes
comparisonComparison operatorconstantyes
left_side_typeFrom expression typeconstantyes
right_side_typeTo expression typeconstantyes
levelParenthesis nesting levelintyes

left_entity overrides the base (implicit) from object entity_from_name for the specific join clause; this is necessary for some uses of the IN operator

Possible values for conjunction: AND, OR

Possible values for comparison: EQ (=), NE (<>), LT (<), GT (>), LE (<=), GE (>=), IN

Possible values for left_side_type, right_side_type: Column, Constant, SubQuery, Expression

Example

<join>
  <entity_from_name>PRO</entity_from_name>
  <entity_to_name>CAT</entity_to_name>
  <clause>
    <left_side>ProductId</left_side>
    <right_side>CategoryId</right_side>
    <conjunction>AND</conjunction>
    <comparison>EQ</comparison>
    <right_side_type>Column</right_side_type>
    <left_side_type>Column</left_side_type>
    <level>0</level>
  </clause>
</join>

Parameters

The Parameters article includes detailed descriptions of each of these settings.

Outer node: <parameter></parameter>

NodeDescriptionTypeRequired
idNamestringyes
data_typeTypeconstantyes
valueValuestringno
hiddenHiddenboolyes
prompt_textPrompt Textstringno
parameter_dropdownParameter Dropdown Objectobjectno

Possible values for data_type: string, date, integer, decimal, boolean

parameter_dropdown

NodeDescriptionTypeRequired
db_nameDatabase object namestringyes
sql_stmtSQL statementstringno
datasource_idUnique Id of data sourceintyes
object_typeObject typeconstantyes
value_fieldValue Fieldstringyes
display_value_fieldDisplay Value Fieldstringno
display_data_typeDisplay Typeconstantyes
sp_paramsStored proc parametersstringno

Possible values for object_type: table, view, procedure, function, assembly, sqlstmt, websvc, file

Possible values for display_data_type: string, date, integer, decimal

Example

<parameter>
  <id>count</id>
  <data_type>integer</data_type>
  <hidden>False</hidden>
  <prompt_text />
  <parameter_dropdown>
    <db_name>Category</db_name>
    <sql_stmt />
    <datasource_id>1</datasource_id>
    <object_type>view</object_type>
    <value_field>Category_View</value_field>
    <display_value_field />
    <display_data_type>string</display_data_type>
    <sp_params />
  </parameter_dropdown>
</parameter>

Quick Functions v2021.1+

Quick Functions are pre-defined calculations or operators that transform the fields in either detail fields or group columns in ExpressView. Learn more in the Quick Functions section of the ExpressView: Formula Columns article.

Outer node: <quickfunction></quickfunction>

NodeDescriptionTypeRequired
idA unique identifier used internally by the applicationstringyes
language_idThe element ID in the language file that will be displayed in the Designer for this Quick Function’s name

For more information, review the Multi-Language Support article.

stringyes
display_formulaAn Exago formula, preceded with the equals sign, that will be applied to the output displayed to the user

Use the placeholder {cell_text} to include the contents of the cell in the formula

Exago functions, custom functions and parameters may be used in the formula. Do not use aggregate functions or data object fields.

Special characters must be XML encoded (e.g. use &amp; for the concatenation character &)

stringyes
sort_textAn Exago formula, preceded with the equals sign, that will be applied to the data to order it when the column is sorted or when it is a group

Use the placeholder {cell_text} to include the contents of the cell in the formula

Exago functions, custom functions and parameters may be used in the formula. Do not use aggregate functions or data object fields.

Special characters must be XML encoded (e.g. use &amp; for the concatenation character &)

stringyes
supported_data_typesThe column data types that the Quick Function may be applied to

Separate multiple values with this delimiter: |*{*}*|

string from QuickFunctionDataTypeyes
return_data_typeThe data type that this Quick Function returns

A column will be transformed to this data type if different than the column’s existing type

int from Constants.DataTypeyes

Examples

year

The year Quick Function uses the Year() function to transform a Date or DateTime column into an integer value of the year portion of the date.

WebReports.xml
<quickfunction>
    <id>year</id>
    <language_id>Year_wrQuickFunction</language_id>
    <display_formula>=Year({cell_text})</display_formula>
    <sort_text>=Year({cell_text})</sort_text>
    <return_data_type>2</return_data_type>
    <supported_data_types>Date</supported_data_types>
</quickfunction>
en-us.xml

Below is an except from the English language file where the name of this Quick Function as it appears in the Designer is defined.

<DateFunctions>
  	...
 <element id="Year_wrQuickFunction">Year</element>
 	...
</DateFunctions>

month-name

The month-name Quick Function uses the MonthName() function to transform a Date or DateTime column into a string value representing the name of the month portion of the date (e.g. January, February, March, etc…). Note the use of the Month() function in the <sort_text> node to keep the list ordered chronologically instead of alphabetically.

WebReports.xml
<quickfunction>
    <id>month-name</id>
    <language_id>MonthName_wrQuickFunction</language_id>
    <display_formula>=MonthName({cell_text})</display_formula>
    <sort_text>=Month({cell_text})</sort_text>
    <return_data_type>0</return_data_type>
    <supported_data_types>Date</supported_data_types>
</quickfunction>
en-us.xml

Below is an except from the English language file where the name of this Quick Function as it appears in the Designer is defined.

<DateFunctions>
  	...
 <element id="MonthName_wrQuickFunction">Month Name</element>
 	...
</DateFunctions>

Roles

The Roles article includes detailed descriptions of each of these settings.

Outer node: <role></role>

NodeDescriptionTypeRequired
idIDstringyes
activeActiveboolyes
rolegeneralGeneral settingsobjectyes
securitySecurity settingsobjectyes

rolegeneral

Note

Settings pertaining to Express Reports were removed from the Admin Console in v2019.2 but they remain available here in the config file. No other functionality was removed.

NodeDescriptionTypeRequired
reportpathReport Pathstringno
dateformatDate Formatstringno
timeformatTime Formatstringno
datetimeformatDateTime Formatstringno
separatorsymbolNumeric Separator Symbolstringno
currencysymbolNumeric Currency Symbolstringno
readfiltervaluesRead Database for Filter Valuesboolno
dbtimeoutDatabase Timeoutintyes
showgridShow Grid Lines in Report Viewerboolno
showcrosstabreportsAllow Creation/Editing of Crosstab Reportsboolno
showdashboardreportsAllow Creation/Editing of Dashboard Reportsboolno
showchainedreportsAllow Creation/Editing of Chained Reportsboolno
showexpressviewsAllow Creation/Editing of ExpressViewsboolno
allowexpressviewliveeditAllow Editing ExpressView with Live Databoolno
showexpressreportsAllow Creation/Editing of Express Reportsboolno
showexpressreportsgroupingShow Groupingboolno
showexpressreportsformulabuttonShow Formula Buttonboolno
showexpressreportsstylingtoolbarShow Styling Toolbarboolno
showexpressreportsthemesShow Themesboolno
showadvancedreportsAllow Creation/Editing of Advanced Reportsboolno
showschedulereportsShow Report Scheduling Optionboolno
showschedulereportsmanagerShow Schedule Reports Managerboolno
schedulemanagerviewlevelScheduler Manager User View Levelconstantno
showschedulereportsemailShow Email Report Optionsboolno
decimalsymbolNumeric Decimal Symbolstringno
languagefileLanguage Filestringno
servertimezoneoffsetServer Time Zone Offsetdecimal

Note

Set to 0 to use the ClientTimeZoneName. If null, Exago will use the External Interface (a deprecated extensibility feature) to calculate the time zone change.

no
showdashboardnewvisualizationbuttonAllow Creation/Editing of Dashboard Visualizationsboolno
allowreportcustomsqlobjectsAllow Creation of Custom SQL Objects in Advanced Reports (v2018.1+)boolno

Possible values for schedulemanagerviewlevel: user, company, all

security

NodeDescriptionTypeRequired
foldersFolder Securityobjectyes
dataobjectsData Object Securityobjectyes
dataobjectrowsData Row Securityobjectno
includereportcustomsqlobjectsv2018.1+ Allow User to View Report-Level Custom SQL Objectsboolno

folders

NodeDescriptionTypeRequired
include_allInclude All Foldersboolyes
read_onlyAll Folders Read Onlyboolyes
allow_managementAllow Folder Managementboolyes
folderFoldersobjectno (1+)

folder

NodeDescriptionTypeRequired
nameFolder Namestringyes
read_onlyRead Onlyboolyes
propagatePropagate status to sub-foldersboolyes

dataobjects

NodeDescriptionTypeRequired
include_allInclude All Data Objectsboolyes
dataobjectObjectsobjectno (1+)

dataobject

Note

For name, use Id if set, otherwise use db_name.

NodeDescriptionTypeRequired
nameData Object Namestringyes

dataobjectrows

NodeDescriptionTypeRequired
dataobjectrowFiltersobjectno (1+)

dataobjectrow

Note

For name, use Id if set, otherwise use db_name.

NodeDescriptionTypeRequired
nameData Object Namestringyes
filterFilter Stringstringyes

Example

  <role>
    <id>Restricted</id>
    <active>False</active>
    <rolegeneral>
      <reportpath />
      <dateformat />
      <timeformat />
      <datetimeformat />
      <separatorsymbol />
      <currencysymbol />
      <readfiltervalues />
      <dbtimeout>0</dbtimeout>
      <showgrid />
      <showcrosstabreports />
      <showdashboardreports />
      <showchainedreports />
      <showexpressviews />
      <allowexpressviewliveedit />
      <showexpressreports />
      <showexpressreportsgrouping />
      <showexpressreportsformulabutton />
      <showexpressreportsstylingtoolbar />
      <showexpressreportsthemes />
      <showadvancedreports />
      <showschedulereports />
      <showschedulereportsmanager />
      <schedulemanagerviewlevel />
      <cachevisibilitylevel />
      <showschedulereportsemail />
      <decimalsymbol />
      <languagefile />
      <servertimezoneoffset>0</servertimezoneoffset>
      <clienttimezonename />
      <showdashboardnewvisualizationbutton />
      <allowreportcustomsqlobjects />
    </rolegeneral>
    <security>
      <includereportcustomsqlobjects>False</includereportcustomsqlobjects>
      <folders>
        <include_all>False</include_all>
        <read_only>False</read_only>
        <allow_management>True</allow_management>
        <folder>
          <name>Sales Reports</name>
          <read_only>False</read_only>
          <propagate>True</propagate>
        </folder>
      </folders>
      <dataobjects>
        <include_all>True</include_all>
      </dataobjects>
      <dataobjectrows />
    </security>
  </role>

Server Events

T

Server Events

The
Introduction to Server Events
article includes detailed descriptions of each of these settings.

Outer node:
<serverevent></serverevent>

NodeDescriptionTypeRequired
nameNamestringyes
id Unique Idintyes
event_typeGlobal Eventconstantyes
datasource_id Id of assembly data sourceintno
func_name Assembly function namestringno
languageLanguageconstantno
program_code Program codestringno
referenceReferencesobjectno (1+)
namespaceNamespacesobjectno (1+)

Possible values for event_type: None, or refer to the
List of Server Events.

Possible values for language: CSharp, JavaScript, VB

reference

NodeDescriptionTypeRequired
name Reference namestringyes

namespace

NodeDescriptionTypeRequired
name Namespace namestringyes

Example

<serverevent>
  <name>ExpandAllFolders</name>
  <id>0</id>
  <event_type>OnAfterLoadReportsList</event_type>
  <language>CSharp</language>
  <program_code>Extensions.ServerEvents.ExpandAllFolders(sessionInfo, (TreeNodeCollection)args[0]);
return null;</program_code>
  <reference>
    <name>Extensions.dll</name>
  </reference>
  <reference>
    <name>WebReports.dll</name>
  </reference>
  <namespace>
    <name>WebReports.UI.Controls</name>
  </namespace>
</serverevent>

Storage Management

The Storage Management article contains detailed descriptions of each of these settings.

Each of these settings may be accessed via the .NET API’s WebReports.Api.Api.SetupData.StorageMgmtConfig namespace. For example:

api.SetupData.StorageMgmtConfig.ClassName = "WebReports.ContentDatabase.StorageMgmtDatabase";

Outer node: <storagemgmt></storagemgmt>

NodeDescriptionTypeRequired
assembly
API key: Assembly
Full path to the DLL implementing the IStorageManagement interfacestringyes
class
API key: ClassName
Name of the class in the assembly that implements IStorageManagementstringyes
report_list_cache_timeout
API key: ReportListCacheTimeout
Number of seconds before the report list cache expiresintegeryes
report_xml_cache_timeout
API key: ReportXmlCacheTimeout
Number of seconds before the report definition XML cache expiresintegeryes
theme_list_cache_enabled
API key: ThemeListCacheTimeout
Whether or not theme list caching is turned on or offbooleanyes
report_xml_cache_enabled
API key: ReportXmlCacheEnabled
Whether or not report definition XML caching is enabledbooleanyes
default_inherit_flag
API key: DefaultInheritFlag
Determines if new content will inherit permissions of its parent.booleanyes
default_party_type_id
API key: DefaultPartyTypeId
If default_inherit_flag is False, this is the party_type_id that new content will be assigned.integerno
default_access_flags
API key: DefaultAccessFlags
If default_inherit_flag is False, this is the access_flags bitmap that new content will be assigned. v2021.1+If default_inherit_flag is False, this is a comma-seperated list of ContentPermission items that new content will be assigned. integer v2020.1–v2021.1
ContentPermission v2021.1+
yes
option

option nodes are used to store Storage Management options and settings data in name-value pairs

NameValue Description
DbTypeDatabase type
DbProviderDatabase provider
ConnectionStringConnection string to Storage Management database
ReportListCacheKeyKey which is used to determine when the report list cache should be replenished.
table_prefix
API key: TablePrefix
Provide an optional prefix for all Storage Management database tables. Review the Storage Management: Database Schema article for information. This option can be used to add a schema if it exists.

Examples:

  1. test_ will result in tables named test_content, test_party_type, test_content_access and test_storage_meta
  2. dbo. will result in tables named dbo.content, dbo.party_type, dbo.content_access and dbo.storage_meta
stringno
identity<identity> nodes define Storage Management identity keys in name-value pairs. This facilitates adding identity nodes beyond the included ownerId, userId, classId and companyId or changing their names.

Note

Adding identity keys will also require changes to the Party Type table.

Example

This example implements Exago’s out-of-the-box implementation of the IStorageManagement interface and includes an additional custom identity key named location.

<storagemgmt>
    <assembly>WebReports.ContentDatabase.dll</assembly>
    <class>WebReports.ContentDatabase.StorageMgmtDatabase</class>
    <report_list_cache_timeout>30</report_list_cache_timeout>
    <report_xml_cache_timeout>30</report_xml_cache_timeout>
    <theme_list_cache_timeout>600</theme_list_cache_timeout>
    <report_list_cache_enabled>False</report_list_cache_enabled>
    <report_xml_cache_enabled>False</report_xml_cache_enabled>
    <default_inherit_flag>False</default_inherit_flag>
    <default_party_type_id>0</default_party_type_id>
    <option name="DbType" value="SQLite" />
    <option name="DbProvider" value="SQLite" />
    <option name="ConnectionString" value="Data Source=D:StorageMgmt.sqlite" />
    <option name="ReportListCacheKey" value="" />
    <table_prefix>sm_</table_prefix>
    <identity name="userId" value="Astro Boy" />
    <identity name="classId" value="Exago, Inc." />
    <identity name="location" value="Kingston" />
    <identity name="companyId" value="Development" />
  </storagemgmt>
Was this article helpful?
0 out of 5 stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Table of Contents