Qlik Sense Engine (qix)
GenericVariable
Applies a patch to the properties of a variable. Allows an update to some of the properties. It should not be possible to patch "/qInfo/qId", and it will be forbidden in the near future.
Parameters
- qPatches array of objectsRequired
Array of patches.
qPatches properties
- qOp string
Can be one of: "add""remove""replace"
- qPath string
Path to the property to add, remove or replace.
- qValue string
This parameter is not used in a remove operation. Corresponds to the value of the property to add or to the new value of the property to update. Examples: "false", "2", ""New title""
-
Response
objectErrors
arrayApplyPatches(qPatches)
const result = await genericVariable.applyPatches([ { "qOp": "add", "qPath": "value", "qValue": "value" }])Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "ApplyPatches", "params": { "qPatches": [ { "qOp": "add", "qPath": "value", "qValue": "value" } ] }}Response
{ "jsonrpc": "2.0", "id": 1, "result": {}}Returns the type and identifier of the object.
Response
- qInfo object
qInfo properties
- qId string
Identifier of the object. If the chosen identifier is already in use, the engine automatically sets another one. If an identifier is not set, the engine automatically sets one. This parameter is optional.
- qType string
Type of the object. This parameter is mandatory.
-
Errors
arrayGetInfo()
const result = await genericVariable.getInfo()Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "GetInfo"}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "qInfo": { "qId": "value", "qType": "value" } }}Evaluates an object and displays its properties including the dynamic properties. If the member delta is set to true in the request object, only the delta is evaluated.
Response
- qLayout object
Is the layout for GenericVariableProperties.
qLayout properties
- qInfo object
qInfo properties
- qId string
Identifier of the object. If the chosen identifier is already in use, the engine automatically sets another one. If an identifier is not set, the engine automatically sets one. This parameter is optional.
- qType string
Type of the object. This parameter is mandatory.
-
- qMeta object
Layout for NxMetaDef.
qMeta properties
- qName string
Name. This property is optional.
-
- qText string
Some text.
- qNum number
A value.
- qIsScriptCreated boolean
If set to true, it means that the variable was defined via script.
-
Errors
arrayGetLayout()
const result = await genericVariable.getLayout()Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "GetLayout"}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "qLayout": { "qInfo": { "qId": "value", "qType": "value" }, "qMeta": { "qName": "value" }, "qText": "value", "qNum": 123, "qIsScriptCreated": true } }}Shows the properties of an object.
Response
- qProp object
qProp properties
- qInfo object
qInfo properties
- qId string
Identifier of the object. If the chosen identifier is already in use, the engine automatically sets another one. If an identifier is not set, the engine automatically sets one. This parameter is optional.
- qType string
Type of the object. This parameter is mandatory.
-
- qMetaDef object
Used to collect metadata.
Properties
Semantic type with an empty structure.
- qName string
Name of the variable. The name must be unique. This parameter is mandatory.
- qComment string
Comment related to the variable. This parameter is optional.
- qNumberPresentation object
Sets the formatting of a field. The properties of qFieldAttributes and the formatting mechanism are described below.
Formatting mechanism
The formatting mechanism depends on the type set in qType, as shown below:
In case of inconsistencies between the type and the format pattern, the format pattern takes precedence over the type.Type is DATE, TIME, TIMESTAMP or INTERVAL
The following applies:
- If a format pattern is defined in qFmt , the formatting is as defined in qFmt .
- If qFmt is empty, the formatting is defined by the number interpretation variables included at the top of the script ( TimeFormat , DateFormat , TimeStampFormat ).
- The properties qDec , qThou , qnDec , qUseThou are not used.
Type is INTEGER
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the formatting mechanism uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , no formatting is applied. The properties qDec , qThou , qnDec , qUseThou and the number interpretation variables defined in the script are not used .
Type is REAL
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , and if the value is almost an integer value (for example, 14,000012), the value is formatted as an integer. The properties qDec , qThou , qnDec , qUseThou are not used.
- If no format pattern is defined in qFmt , and if qnDec is defined and not 0, the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
- If no format pattern is defined in qFmt , and if qnDec is 0, the number of decimals is 14 and the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
Type is FIX
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , the properties qDec and qnDec are used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
Type is MONEY
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of any script ( MoneyDecimalSep and MoneyThousandSep ).
- If no format pattern is defined in qFmt , the engine uses the number interpretation variables included at the top of the script ( MoneyDecimalSep and MoneyThousandSep ).
Type is ASCII
No formatting, qFmt is ignored.
qNumberPresentation properties
- qType string
Can be one of: "U""A""I""R""F""M""D""T""TS""IV"
- qnDec integer
Number of decimals. Default is 10.
- qUseThou integer
Defines whether or not a thousands separator must be used. Default is 0.
- qFmt string
Defines the format pattern that applies to qText . Is used in connection to the type of the field (parameter qType ). For more information, see Formatting mechanism. Example: YYYY-MM-DD for a date.
- qDec string
Defines the decimal separator. Example: .
- qThou string
Defines the thousand separator (if any). Is used if qUseThou is set to 1. Example: ,
- qIncludeInBookmark boolean
Set this property to true to update the variable when applying a bookmark. The variable value will be persisted in the bookmark. The value of a variable can affect the state of the selections. Script variables cannot be persisted in the bookmark. The default value is false.
- qDefinition string
Definition of the variable.
- qConstraints object
qConstraints properties
- qType string
Can be one of: "any""number""text"
- qValuesText array of strings
- qValuesNum array of numbers
-
-
Errors
arrayGetProperties()
const result = await genericVariable.getProperties()Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "GetProperties"}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "qProp": { "qInfo": { "qId": "value", "qType": "value" }, "qMetaDef": {}, "qName": "value", "qComment": "value", "qNumberPresentation": { "qType": "U", "qnDec": 10, "qUseThou": 0, "qFmt": "value", "qDec": "value", "qThou": "value" }, "qIncludeInBookmark": false, "qDefinition": "value", "qConstraints": { "qType": "any", "qValuesText": [ "value" ], "qValuesNum": [ 123 ] } } }}GetRawContent()
const result = await genericVariable.getRawContent()Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "GetRawContent"}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "qReturn": "value" }}Sets the value of a dual variable.
Parameters
- qText stringRequired
String representation of a dual value. Set this parameter to "", if the string representation is to be Null.
- qNum numberRequired
Numeric representation of a dual value.
Response
objectErrors
arraySetDualValue(qText, qNum)
const result = await genericVariable.setDualValue("value", 123)Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "SetDualValue", "params": { "qText": "value", "qNum": 123 }}Response
{ "jsonrpc": "2.0", "id": 1, "result": {}}Sets a numerical value to a variable.
Parameters
- qVal numberRequired
Value of the variable.
Response
objectErrors
arraySetNumValue(qVal)
const result = await genericVariable.setNumValue(123)Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "SetNumValue", "params": { "qVal": 123 }}Response
{ "jsonrpc": "2.0", "id": 1, "result": {}}Sets some properties for a variable.
Parameters
- qProp objectRequired
Information about the variable.
qProp properties
- qInfo object
qInfo properties
- qId string
Identifier of the object. If the chosen identifier is already in use, the engine automatically sets another one. If an identifier is not set, the engine automatically sets one. This parameter is optional.
- qType string
Type of the object. This parameter is mandatory.
-
- qMetaDef object
Used to collect metadata.
Properties
Semantic type with an empty structure.
- qName string
Name of the variable. The name must be unique. This parameter is mandatory.
- qComment string
Comment related to the variable. This parameter is optional.
- qNumberPresentation object
Sets the formatting of a field. The properties of qFieldAttributes and the formatting mechanism are described below.
Formatting mechanism
The formatting mechanism depends on the type set in qType, as shown below:
In case of inconsistencies between the type and the format pattern, the format pattern takes precedence over the type.Type is DATE, TIME, TIMESTAMP or INTERVAL
The following applies:
- If a format pattern is defined in qFmt , the formatting is as defined in qFmt .
- If qFmt is empty, the formatting is defined by the number interpretation variables included at the top of the script ( TimeFormat , DateFormat , TimeStampFormat ).
- The properties qDec , qThou , qnDec , qUseThou are not used.
Type is INTEGER
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the formatting mechanism uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , no formatting is applied. The properties qDec , qThou , qnDec , qUseThou and the number interpretation variables defined in the script are not used .
Type is REAL
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , and if the value is almost an integer value (for example, 14,000012), the value is formatted as an integer. The properties qDec , qThou , qnDec , qUseThou are not used.
- If no format pattern is defined in qFmt , and if qnDec is defined and not 0, the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
- If no format pattern is defined in qFmt , and if qnDec is 0, the number of decimals is 14 and the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
Type is FIX
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
- If no format pattern is defined in qFmt , the properties qDec and qnDec are used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
Type is MONEY
The following applies:
- If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of any script ( MoneyDecimalSep and MoneyThousandSep ).
- If no format pattern is defined in qFmt , the engine uses the number interpretation variables included at the top of the script ( MoneyDecimalSep and MoneyThousandSep ).
Type is ASCII
No formatting, qFmt is ignored.
qNumberPresentation properties
- qType string
Can be one of: "U""A""I""R""F""M""D""T""TS""IV"
- qnDec integer
Number of decimals. Default is 10.
- qUseThou integer
Defines whether or not a thousands separator must be used. Default is 0.
- qFmt string
Defines the format pattern that applies to qText . Is used in connection to the type of the field (parameter qType ). For more information, see Formatting mechanism. Example: YYYY-MM-DD for a date.
- qDec string
Defines the decimal separator. Example: .
- qThou string
Defines the thousand separator (if any). Is used if qUseThou is set to 1. Example: ,
- qIncludeInBookmark boolean
Set this property to true to update the variable when applying a bookmark. The variable value will be persisted in the bookmark. The value of a variable can affect the state of the selections. Script variables cannot be persisted in the bookmark. The default value is false.
- qDefinition string
Definition of the variable.
- qConstraints object
qConstraints properties
- qType string
Can be one of: "any""number""text"
- qValuesText array of strings
- qValuesNum array of numbers
-
-
Response
objectErrors
arraySetProperties(qProp)
const result = await genericVariable.setProperties({ "qInfo": { "qId": "value", "qType": "value" }, "qMetaDef": {}, "qName": "value", "qComment": "value", "qNumberPresentation": { "qType": "U", "qnDec": 10, "qUseThou": 0, "qFmt": "value", "qDec": "value", "qThou": "value" }, "qIncludeInBookmark": false, "qDefinition": "value", "qConstraints": { "qType": "any", "qValuesText": [ "value" ], "qValuesNum": [ 123 ] }})Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "SetProperties", "params": { "qProp": { "qInfo": { "qId": "value", "qType": "value" }, "qMetaDef": {}, "qName": "value", "qComment": "value", "qNumberPresentation": { "qType": "U", "qnDec": 10, "qUseThou": 0, "qFmt": "value", "qDec": "value", "qThou": "value" }, "qIncludeInBookmark": false, "qDefinition": "value", "qConstraints": { "qType": "any", "qValuesText": [ "value" ], "qValuesNum": [ 123 ] } } }}Response
{ "jsonrpc": "2.0", "id": 1, "result": {}}Sets a string value to a variable.
Parameters
- qVal stringRequired
Value of the variable. The string can contain an expression.
Response
objectErrors
arraySetStringValue(qVal)
const result = await genericVariable.setStringValue("value")Request
{ "jsonrpc": "2.0", "id": 1, "handle": 3, "method": "SetStringValue", "params": { "qVal": "value" }}Response
{ "jsonrpc": "2.0", "id": 1, "result": {}}