options attribute
Specifies a number of options, separated by semicolons (;
).
Content Type
string
Parent
Remarks
autoAdd
If you specify this option in the ArrayOptions tag of a table parameter, when you perform a SetRow or a SetParameterIndex operation within a QAction and the row does not exist, it will automatically be added.
Example:
<Param id="101" trending="false">
...
<Type>array</Type>
<ArrayOptions index="0" options=";autoAdd">
...
</Param>
customDatabaseName
To be used in combination with the database option.
By default, the name of the logger table in the database will be elementdata_[AgentId]_[ElementId]_[TableParameterId]
(e.g. "elementdata_346_353_1000") and this table will be created in the default local DataMiner schema. When the customDatabaseName
option is used, the table is created in a separate table schema (where the name of the schema is the name specified in the option) and the name of the table within this schema is the name of your table.
Example:
<ArrayOptions ... options=";database;customDatabaseName=myName">
See also: Logger tables.
database
This option should only be used for logger tables.
If you use this option, not all data will be kept in memory. It will instead be stored in the general database and loaded when needed.
By default, 500 rows will be kept in memory. If you want to override this default setting, specify a number of rows in the option. See the following example:
options=";database:1000"
The column parameters are used to create the table. Whitespace characters will be replaced by underscores. So be sure that the parameter name does not contain illegal SQL syntax. For example, "Asset (Log)" will cause errors.
Note
- When the table contains datetime fields, they must always have a valid value and can never be empty or null.
- If you set this database option for a particular logger table, then remember that it will not be possible to retrieve data from the table or to set data in the table using getparameterbyindex or a setter parameter.
- In existing elements, the structure of a logger table cannot be changed. For example, in an existing element, you cannot add columns to a logger table.
See also: Logger tables.
databaseName
To be used in combination with the database option.
By default, the name of the logger table in the database will be elementdata_[AgentId]_[ElementId]_[TableParameterId]
(e.g. "elementdata_346_353_1000"). This table will be created in the default local DataMiner schema. When the databaseName
option is used, the table is created in a separate table schema (where the name of the schema is the name of the element) and the name of the table within the schema is the name of the table.
Example:
<ArrayOptions ... options=";database;databaseName">
See also: Logger tables.
databaseNameProtocol
To be used in combination with the database option.
By default, the name of the logger table in the database will be elementdata_[AgentId]_[ElementId]_[TableParameterId]
(e.g. "elementdata_346_353_1000"), and this table will be created in the default local DataMiner schema. When the databaseNameProtocol
option is used, the table is created in a separate table schema (where the name of the schema is the name of the protocol), and the name of the table within this schema is the name of the table.
Example:
<ArrayOptions ... options=";database;databaseNameProtocol">
See also: Logger tables.
directView
Use this option to create a view table with data from other elements.
Set directView to the parameter ID of the column containing the element ID.
Example:
options=";view=1000;directView=2802"
See also: view
discreetDestination
If you use this option, followed by the name of an XML file, all changes made to primary keys and display keys will be stored in the specified XML file for use elsewhere.
Example:
<ArrayOptions options=";discreetDestination=ports.xml">
interruptTrend
If you use this option, trending will not follow the changed display key.
If you do not use the interruptTrend option, when the display key changes, all trending values for the old display key will be transferred to trending values for the new display key.
naming
This option replaces the display column. Via this option it is possible to define multiple columns that will result in the display key. It is also possible to use a column of a linked table.
The first character is the separator.
Note
This option cannot be used together with displayColumn.
Example:
options=";naming=/101,202"
It is possible to fully customize the format of the display key. See NamingFormat
See also: Display keys
onlyFilteredDirectView
When this option is used, data from this direct view can only be retrieved through the use of filters (EPM). The full table cannot be requested/subscribed to.
Example:
options=";view=1000;directView=2802;onlyFilteredDirectView"
preserve state
If you use this option, you will be able to retrieve the previous value of the changed cell (in a QAction). Be careful when you use this option, as it requires more processing power.
propertyTable
processingOrder
Use this option to force the SLElement process to use a particular processing order when a table update is received.
By default, the order is as follows:
- Primary key
- Display key
- Foreign key(s)
- Local naming parameter ID(s)
- Property parameter ID(s) used as a source for alarm properties
- Other parameter ID(s)
- Parameter ID(s) to which conditions have been applied
Example:
<ArrayOptions index="0" options=";naming=/1002;processingOrder=0,1,2,3,4,6,7,10,12,14,15,16,19,20,21,22,27,29,31,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,5,8,9,11,13,17,18,23,24,25,26,28,30,32,33,34">
See also: Column processing order in tables
queryTablePID=
Specifies the ID of the table parameter to query for more information in an EPM environment.
Example:
<ArrayOptions options=";queryTablePID=1500" />
sizeHint
For large volatile tables, the sizeHint option can be specified with the expected number of rows, allowing the SLElement process to perform some optimizations.
Note
This option should not be used on non-volatile tables.
Example:
<ArrayOptions index="0" partial="true:2000" options=";volatile;autoAdd;sizeHint=200000">
view
Use this option to have the table display the values from another table (of which the ID has to be specified).
It is possible to add values from tables linked to this root table.
Example:
options=";view=1000"
Direct view tables can have a different element or protocol as their source. This will for example allow you to show collector info in an EPM element that is not aware of all possible values (e.g. frequency info in a collector). To configure this:
Create a directView table. In other words, link to a column (parameter ID) that defines the remote elements.
Example:
options="...directView=201;..."
Specify the table that has to be retrieved, and indicate that the parameter ID of the remote table has to be taken.
Example:
options="...view=40000,remoteId;..."
Define a mapping between the local parameter IDs and the remote parameter IDs. Each pair should contain a local ID and a remote ID, separated by a hyphen, and the pairs should be separated by commas.
Example:
options="...filterChange=701-40001,702-40002,703-40003"
Example
<Param id="11600">
<Name>CPE Frequencies</Name>
<Description>CPE Frequencies</Description>
<Type>array</Type>
<ArrayOptions index="0" partial=";true:1000" options=";volatile;view=90000,remoteId;
directView=3301;onlyFilteredDirectView;filterChange=11601-9001,11602-9002,11603-9003,11604-9004">
<ColumnOption idx="0" pid="11601" type="retrieved" options=";"/>
<ColumnOption idx="1" pid="11602" type="retrieved" options=";"/>
<ColumnOption idx="2" pid="11603" type="retrieved" Options=";"/>
<ColumnOption idx="3" pid="11604" type="retrieved" Options=";"/>
</ArrayOptions>
...
volatile
If you use this option, the primary keys will not be saved.
Caution
Be careful about where you use this option, as it cannot be used on every table. For information on the limitations, see Volatile tables.