QAction element
Specifies the code that must execute when a parameter or a row has changed.
Parent
Attributes
Name | Type | Required | Description |
---|---|---|---|
dllImport | TypeDllImport | Specifies external DLL files used by the QAction. | |
encoding | EnumQActionEncoding | Specifies the language in which the script has been written. | |
entryPoint | string | Defines the entry point method(s) corresponding with the parameter(s) triggering the QAction execution. | |
id | TypeObjectId | Yes | Specifies the unique QAction ID. |
include | string | Specifies the name of the external script to be executed. | |
inputParameters | TypeSemicolonSeparatedNumbers | Specifies the IDs of the parameters that will be passed to functions inside the QAction script. | |
name | TypeNonEmptyString | Yes | Specifies the name of the QAction. |
options | TypeQActionOptions | Allows you to specify a number of options, separated by semicolons. | |
row | EnumTrueFalse | If set to "true", the QAction will be executed when a row of a table has changed. | |
triggers | TypeSemicolonSeparatedNumbers | Specifies the IDs of the parameters that will cause the QAction to be executed each time their value changes. |
Children
Name | Occurrences | Description |
---|---|---|
Condition | [0, 1] | Specifies a condition that must be met in order for the QAction to execute. |
Remarks
The actual script code of a QAction must be placed inside a CDATA section. By placing code inside a CDATA section, characters like “<” and “&”, which are normally illegal when placed inside normal XML tags, will no longer be considered as such. A CDATA section starts with <![CDATA[
and ends with ]]>
.
In order to interact with the SLProtocol process (e.g. to access parameters or to notify DataMiner of certain events)
in Jscript or VBScript code, use the SLScript object. (Note the VBScript is no longer supported.)
in C# code, use the Skyline.DataMiner.Scripting namespace.
For information on how to use C# in protocols, see QActions.
Examples
<QAction id="1" encoding="csharp" triggers="2">
<![CDATA[
using System;
using System.IO;
using Skyline.DataMiner.Scripting;
public class Qaction
{
public static void Run(SLProtocol protocol)
{
...
}
}
]]>
</QAction>
<QAction id="1" encoding="jscript" triggers="500" include="http_get_post.js">
...
</QAction>
<QAction id="10000" name="D9036 Generic" triggers="109" encoding="csharp" options="dllname=D9036GenericClasses.dll" >
...
</QAction>