@types/qlik-engineapi
Version:
TypeScript definitions for qlik-engineapi
1,873 lines (1,632 loc) • 329 kB
TypeScript
declare namespace EngineAPI {
type CommandType =
| "JsonRequest"
| "GetCustomCaption"
| "IsConnected"
| "DisableQlikViewSelectButton"
| "HaveStarField";
type LogonType = "LOG_ON_SERVICE_USER" | "LOG_ON_CURRENT_USER";
type NxGrpType = "N" | "H" | "C" | string;
type FieldAttributesType = "U" | "A" | "I" | "R" | "F" | "M" | "D" | "T" | "TS" | "IV";
type FileDataFormatType =
| "CSV"
| "FIX"
| "DIF"
| "EXCEL_BIFF"
| "EXCEL_OOXML"
| "HTML"
| "XML"
| "QVX"
| "JSON"
| "KML";
type TableRecordKeyType = "NOT_KEY" | "ANY_KEY" | "PRIMARY_KEY" | "PERFECT_KEY";
/**
* One of:
* - Cleared: In this mode, the first step is to clear any current selections in the app.
* The second step is to search for one or more terms in the values of the app.
* - LockedFieldsOnly: In this mode, the search applies only to the values associated with
* the selections made in locked fields, ignoring selections in any unlocked field.
* If no locked fields, the behavior is identical to the Cleared context.
* You cannot make any new selections in a locked field. You can get search hits for
* the associated values of a locked field but you cannot get the search hits for the non associative values.
* - CurrentSelections: In this mode, the current selections are kept (if any). Search for one or more terms in the values of the app.
* New selections are made on top of the current selections. If no selections were made before the search,
* this mode is identical to the Cleared context.
*/
type ContextType = "Cleared" | "LockedFieldsOnly" | "CurrentSelections";
type SearchObjectsGroupType = "DatasetType" | "GenericObjectsType";
type SearchObjectsItemType = "0" | "1";
type NxPatchOpType = "Add" | "Remove" | "Replace";
type FileType = "CSV_C" | "CSV_T" | "OOXML";
type ExportStateType = "P" | "A";
type ReductionModeType = "N" | "D1" | "S" | "C" | "ST";
type FieldDefExType = "0" | "1" | "2";
type FolderItemType = "FOLDER" | "FILE" | "OTHER";
type NxCellStateType = "L" | "S" | "O" | "D" | "A" | "X" | "XS" | "XL";
type NxCellType = "V" | "E" | "N" | "T" | "P" | "R" | "U";
type NxSelectionCellType = "D" | "T" | "L";
type SortIndicatorType = "N" | "A" | "D";
type OtherModeType =
| "OTHER_OFF"
| "OTHER_COUNTED"
| "OTHER_ABS_LIMITED"
| "OTHER_ABS_ACC_TARGET"
| "OTHER_REL_LIMITED"
| "OTHER_REL_ACC_TARGET";
type OtherLimitModeType = "OTHER_GE_LIMIT" | "OTHER_LE_LIMIT" | "OTHER_GT_LIMIT" | "OTHER_LT_LIMIT";
type OtherSortModeType = "OTHER_SORT_DEFAULT" | "OTHER_SORT_DESCENDING" | "OTHER_SORT_ASCENDING";
type TotalModeType = "TOTAL_OFF" | "TOTAL_EXPR";
type BnfType = "S" | "E";
/**
* One of:
* - N for NOT_META
* - D for META_DOC_NAME
* - R for META_RET_TYPE
*/
type MTType = "N" | "D" | "R";
/**
* One of:
* - CONNECT_DEFAULT: used internally
* - CONNECT_64
* - CONNECT_32
*/
type MachineModeType = "CONNECT_DEFAULT" | "CONNECT_64" | "CONNECT_32";
/**
* One of:
* - IT_SCRIPTLINE; the engine returns the statement that will be executed next.
* - IT_MSGBOX; the engine returns a script execution error message. This type can only be returned if the parameter qInteractOnError was set to true when calling the ConfigureReload method.
* - IT_BREAK; the engine breaks and waits for a response on what to do next.
* - IT_END; the engine has finished to execute all statements in the script.
*/
type InteractionType = "IT_SCRIPTLINE" | "IT_MSGBOX" | "IT_BREAK" | "IT_END";
type ErrorDataCodeType = "0" | "1" | "2";
/**
* One of:
* - ALL for FUNC_GROUP_ALL,
* - U for FUNC_GROUP_UNKNOWN,
* - NONE for FUNC_GROUP_NONE,
* - AGGR for FUNC_GROUP_AGGR,
* - NUM for FUNC_GROUP_NUMERIC,
* - RNG for FUNC_GROUP_RANGE,
* - EXP for FUNC_GROUP_EXPONENTIAL_AND_LOGARITHMIC,
* - TRIG for FUNC_GROUP_TRIGONOMETRIC_AND_HYPERBOLIC,
* - FIN for FUNC_GROUP_FINANCIAL,
* - MATH for FUNC_GROUP_MATH_CONSTANT_AND_PARAM_FREE,
* - COUNT for FUNC_GROUP_COUNTER,
* - STR for FUNC_GROUP_STRING,
* - MAPP for FUNC_GROUP_MAPPING,
* - RCRD for FUNC_GROUP_INTER_RECORD,
* - CND for FUNC_GROUP_CONDITIONAL,
* - LOG for FUNC_GROUP_LOGICAL,
* - NULL for FUNC_GROUP_NULL,
* - SYS for FUNC_GROUP_SYSTEM,
* - FILE for FUNC_GROUP_FILE,
* - TBL for FUNC_GROUP_TABLE,
* - DATE for FUNC_GROUP_DATE_AND_TIME,
* - NUMI for FUNC_GROUP_NUMBER_INTERPRET,
* - FRMT for FUNC_GROUP_FORMATTING,
* - CLR for FUNC_GROUP_COLOR,
* - RNK for FUNC_GROUP_RANKING
* - GEO for FUNC_GROUP_GEO
* - EXT for FUNC_GROUP_EXTERNAL
*/
type FunctionGroupType =
| "ALL"
| "U"
| "NONE"
| "AGGR"
| "NUM"
| "RNG"
| "EXP"
| "TRIG"
| "FIN"
| "MATH"
| "COUNT"
| "STR"
| "MAPP"
| "RCRD"
| "CND"
| "LOG"
| "NULL"
| "SYS"
| "FILE"
| "TBL"
| "DATE"
| "NUMI"
| "FRMT"
| "CLR"
| "RNK"
| "GEO"
| "EXT";
type DimensionType = "D" | "N" | "T";
/**
* One of:
* - S for DATA_MODE_STRAIGHT; straight table representation
* - P for DATA_MODE_PIVOT; pivot table representation
* - K for DATA_MODE_PIVOT_STACK; stacked table representation
* - T for DATA_MODE_TREE; tree representation
*/
type NxHypercubeMode = "S" | "P" | "K" | "T";
/**
* One of:
* - NX_FREQUENCY_NONE
* - NX_FREQUENCY_VALUE
* - NX_FREQUENCY_PERCENT. The percentage is between 0 and 100.
* - NX_FREQUENCY_RELATIVE. Same as percent except that the relative value is between 0 and 1.
*/
type FrequencyModeType =
| "NX_FREQUENCY_NONE"
| "NX_FREQUENCY_VALUE"
| "NX_FREQUENCY_PERCENT"
| "NX_FREQUENCY_RELATIVE";
type TypeSortDirection = "1" | "-1" | "0";
/**
* Type of the drive. Can be:
* - REMOVABLE
* - FIXED
* - NETWORK
* - CD_ROM
* - RAM
* - UNKNOWN_TYPE
*/
type DriveType = "REMOVABLE" | "FIXED" | "NETWORK" | "CD_ROM" | "RAM" | "UNKNOWN_TYPE";
/**
* One of:
* - V for NX_DIM_CELL_VALUE. Applies to values in the data matrix.
* - E for NX_DIM_CELL_EMPTY. Applies to empty cells in the top and left dimensions.
* - G for NX_DIM_CELL_GENERATED. Applies to generated nodes that are inserted into the returned tree when there is no actual value (qAllValues in NxPageTreeNode set to true).
* - N for NX_DIM_CELL_NORMAL. Applies to left and top dimensions cells.
* - T for NX_DIM_CELL_TOTAL. Applies to cells marked with Total.
* - P for NX_DIM_CELL_PSEUDO. Applies to pseudo dimensions.
* - R for NX_DIM_CELL_ROOT. Applies to root node.
* - U for NX_DIM_CELL_NULL. Applies to Null values in the data matrix.
*/
type NxTreeNodeType = "V" | "E" | "G" | "N" | "T" | "P" | "R" | "U";
/**
* NxRange...
*/
interface INxRange {
/**
* Position in the expression of the first character of the field name.
*/
qCount: number;
/**
* Number of characters in the field name.
*/
qFrom: number;
}
/**
* ExpressionResult...
*/
interface IExpressionResult {
qBadFieldNames: INxRange[];
}
/**
* CheckExpressionResult width extend ExpressionResult
*/
interface ICheckExpressionResult extends IExpressionResult {
qDangerousFieldNames: INxRange[];
qErrorMsg: string;
}
/**
* CheckNumberOrExpressionResult width extend ExpressionResult
*/
interface ICheckNumberOrExpressionResult extends IExpressionResult {
qErrorMsg: string;
}
/**
* ScriptSyntaxError...
*/
interface IScriptSyntaxError {
/**
* Length of the word where the error is located
*/
qErrLen: number;
/**
* Number of the faulty section
*/
qTabIx: number;
/**
* Line number in the section where the error is located
*/
qLineInTab: number;
/**
* Position of the erroneous text from the beginning of the line
*/
qColInLine: number;
/**
* Position of the erroneous text from the beginning of the script
*/
qTextPos: number;
/**
* The default value is false.
*/
qSecondaryFailure: boolean;
}
/*
* NxMeta...
*/
interface INxMeta {
/**
* Name.
* >> This property is optional.
*/
qName?: string | undefined;
}
/**
* NxGetBookmarkOptions.
*/
interface INxGetBookmarkOptions {
/**
* List of object types..
*/
qTypes: string[];
/**
* Set of data.
*/
qData: any;
}
/**
* NxGetObjectOptions.
*/
interface INxGetObjectOptions {
/**
* List of object types..
*/
qTypes: string[];
/**
* Set to true to include session objects.
*
* Default: false
*/
qIncludeSessionObjects: boolean;
/**
* Set of data.
*/
qData: any;
}
/**
* NxMetaTitleDescription width extend NxMeta
*/
interface INxMetaTitleDescription extends INxMeta {
/**
* Set a title.
*/
title: string;
/**
* Set a description.
*/
description: string;
}
/**
* NxMetaTitleDescriptionTag width extend NxMetaTitleDescription
*/
interface INxMetaTitleDescriptionTag extends INxMetaTitleDescription {
/**
* Array of String
*/
tags: string[];
}
/**
* Connection...
*/
interface IConnection {
/**
* Identifier of the connection.
* Is generated by the engine and is unique.
*/
qId: string;
/**
* Name of the connection.
* This parameter is mandatory and must be set when creating or modifying a connection.
*/
qName: string;
/**
* One of:
*
* - ODBC CONNECT TO [<provider name>]
* - OLEDB CONNECT TO [<provider name>]
* - CUSTOM CONNECT TO [<provider name>]
* - "<local absolute or relative path,UNC path >"
* - "<URL>"
*
* Connection string.
* This parameter is mandatory and must be set when creating or modifying a connection.
*/
qConnectionString: string;
/**
* One of:
* - ODBC
* - OLEDB
* - <Name of the custom connection file>
* - folder
* - internet
*
* Type of the connection.
* This parameter is mandatory and must be set when creating or modifying a connection.
* For ODBC, OLEDB and custom connections, the engine checks that the connection type matches the connection string.
* >> The type is not case sensitive.
*/
qType: string;
/**
* Name of the user who creates the connection.
* This parameter is optional; it is only used for OLEDB, ODBC and CUSTOM connections.
* A call to GetConnection method does not return the user name.
*/
qUserName?: string | undefined;
/**
* Password of the user who creates the connection.
* This parameter is optional; it is only used for OLEDB, ODBC and CUSTOM connections.
* A call to GetConnection method does not return the password.
*/
qPassword?: string | undefined;
/**
* Is generated by the engine.
* Creation date of the connection or last modification date of the connection.
*/
qModifiedDate: string;
/**
* Information about the connection.
*/
qMeta: INxMeta;
/**
* Select which user credentials to use to connect to the source.
*
* - LOG_ON_SERVICE_USER: Disables
* - LOG_ON_CURRENT_USER: Enables
*/
qLogOn: LogonType;
}
/**
* NxLibraryDimensionDef
*/
interface INxLibraryDimensionDef {
/**
* Information about the grouping.
*/
qGrouping: NxGrpType;
/**
* Array of dimension names.
*/
qFieldDefs: string[];
/**
* Array of dimension labels.
*/
qFieldLabels: string[];
/**
* no docu
*/
qLabelExpression: string;
}
/**
* GenericProperties
*/
interface IGenericProperties {
/**
* Identifier and type of the object.
* >> This parameter is mandatory.
*/
qInfo: INxInfo;
// ?Dynamic properties?
[qMetaDef: string]: any;
}
/**
* GenericBookmarkProperties width extend GenericProperties
*/
interface IGenericBookmarkProperties extends IGenericProperties {
}
/**
* GenericDimensionProperties width extend GenericProperties
*/
interface IGenericDimensionProperties extends IGenericProperties {
qDim: INxLibraryDimensionDef;
}
/**
* GenericMeasureProperties width extend GenericProperties
*/
interface IGenericMeasureProperties extends IGenericProperties {
qMeasure: INxLibraryMeasureDef;
}
/**
* GenericObjectProperties width extend GenericProperties
*/
interface IGenericObjectProperties extends IGenericProperties {
qExtendsId?: string | undefined;
}
/**
* GenericVariableProperties width extend GenericProperties
*/
interface IGenericVariableProperties extends IGenericProperties {
/**
* Name of the variable.
* The name must be unique.
* >> This parameter is mandatory.
*/
qName: string;
/**
* Comment related to the variable.
* >> This parameter is optional.
*/
qComment?: string | undefined;
/**
* Defines the format of the value.
* >> This parameter is optional.
*/
qNumberPresentation?: IFieldAttributes | undefined;
/**
* 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.
*/
qIncludeInBookmark: boolean;
/**
* Definition of the variable.
*/
qDefinition: string;
}
/**
* Sets the formatting of a field.
* The properties of qFieldAttributes and the formatting mechanism are described below.
*/
interface IFieldAttributes {
/**
* Type of the field.
* One of:
*
* - U for UNKNOWN type (default)
* - A for ASCII; Numeric fields values contain only standard ASCII characters.
* - I for INTEGER; Numeric fields values are shown as integer numbers.
* - R for REAL; Numeric fields values are shown as real numbers.
* - F for FIX; Numeric fields values are shown as numbers with a fix number of decimals.
* - M for MONEY; Numeric fields values are shown as in the money format.
* - D for DATE; Numeric fields values are shown as dates.
* - T for TIME; Numeric fields values are shown as times.
* - TS TIMESTAMP; Numeric fields values are shown as time stamps.
* - IV for INTERVAL; Numeric fields values are shown as intervals.
*/
qType: FieldAttributesType;
/**
* Number of decimals.
* (Integer between 0 and 15.)
* default is 10.
*/
qnDec: number;
/**
* Defines whether or not a thousands separator must be used.
* default is 0 (false) or 1 (true).
*/
qUseThou: boolean;
/**
* 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
*/
qFmt: string;
/**
* Defines the decimal separator.
* Example: .
*/
qDec: string;
/**
* Defines the thousand separator (if any).
* Is used if qUseThou is set to 1.
* Example: ,
*/
qThou: string;
/**
* no / empty docu
*/
qSAFEARRAY: any[];
}
/**
* NxInfo...
*/
interface INxInfo {
/**
* Identifier of the object.
* If the chosen identifier is already in use, the engine automatically sets another one.
* This parameter is optional. If an identifier is not set, the engine automatically sets one.
*/
qId?: string | undefined;
/**
* Type of the object.
* >> This parameter is mandatory.
*/
qType: string;
}
/**
* DoReloadExParams...
*/
interface IDoReloadExParams {
/**
* Error handling mode
* One of:
* 0: for default mode
* 1: for ABEND; the reload of the script ends if an error occurs.
* 2: for ignore; the reload of the script continues even if an error is detected in the script.
* >> This parameter is optional.
*/
qMode?: number | undefined;
/**
* Set to true for partial reload
* >> This parameter is optional.
* >> The default value is false.
*/
qPartial?: boolean | undefined;
/**
* Set to true if debug breakpoints are to be honored.
* The execution of the script will be in debug mode.
* >> This parameter is optional.
* >> The default value is false.
*/
qDebug?: boolean | undefined;
}
/**
* DoReloadExResult...
*/
interface IDoReloadExResult {
/**
* The operation is successful if qSuccess is set to True.
*/
qSuccess: boolean;
/**
* Path to the script log file.
*/
qScriptLogFile: string;
}
/**
* FieldValue...
*/
interface IFieldValue {
/**
* Text related to the field value
* This parameter is optional.
*/
qText?: string | undefined;
/**
* Is set to true if the value is a numeric.
* This parameter is optional. Default is false.
*/
qIsNumeric?: boolean | undefined;
/**
* Numeric value of the field.
* This parameter is displayed if qIsNumeric is set to true.
* This parameter is optional.
*/
qNumber?: number | undefined;
}
/**
* NxMatchingFieldInfo...
*/
interface INxMatchingFieldInfo {
/**
* Name of the field
*/
qName: string;
/**
* List of tags
*/
qTags: string[];
}
/**
* NxAppLayout ...
*/
interface INxAppLayout {
/**
* Title of the app.
*/
qTitle: string;
/**
* In Qlik Sense Enterprise, this property corresponds to the app identifier (GUID).
* In Qlik Sense Desktop, this property corresponds to the full path of the app.
*/
qFileName: string;
/**
* Date and time of the last reload of the app in ISO format.
*/
qLastReloadTime: string;
/**
* Is set to true if the app has been updated since the last save.
*/
qModified: boolean;
/**
* Is set to true if a script is defined in the app.
*/
qHasScript: boolean;
/**
* Array of alternate states.
*/
qStateNames: string[];
/**
* Information on publishing and permissions.
*/
qMeta: INxMeta;
/**
* Information about the locale.
*/
qLocaleInfo: ILocaleInfo;
/**
* Is set to true if the app contains data following a script reload.
*/
qHasData: boolean;
/**
* If set to true, it means that the app is read-only.
*/
qReadOnly: boolean;
/**
* If set to true, it means that the app was opened without loading its data.
*/
qIsOpenedWithoutData: boolean;
/**
* App thumbnail.
*/
qThumbnail: IStaticContentUrl;
}
/**
* NxAppProperties
*/
interface INxAppProperties {
/**
* App title.
*/
qTitle: string;
/**
* Last reload time of the app.
*/
qLastReloadTime: string;
/**
* App thumbnail.
*/
qThumbnail: IStaticContentUrlDef;
/**
* Internal property reserved for app migration.
* Patch version of the app.
* Do not update.
*/
qMigrationHash: string;
/**
* Internal property reserved for app migration.
* The app is saved in this version of the product.
* Do not update.
*/
qSavedInProductVersion: string;
}
/**
* AssociationScore...
*/
interface IAssociationScore {
/**
* Pair of fields.
* <FieldName1> / <FieldName2>
* Where:
* <FieldName1> is a field in the table 1 (defined in qTable1)
* <FieldName2> is a field in the table 2 (defined in qTable2)
* If the field is a synthetic key, the name of the field is preceded by [Synthetic key]:.
*/
qFieldPairName: string;
/**
* Flag used to interpret calculated scores.
* One of the following values or sum of values that apply:
*
* 0: The cardinal ratio cannot be zero but the symbol score and the row score can be zero.
* -1: The fields do not have the same type.
* -2: The number of rows of the field FieldName1 is zero.
* -4: The number of distinct values of the field FieldName1 is zero.
* -8: The number of rows of the field FieldName2 is zero.
* -16: The number of distinct values of the field FieldName2 is zero.
*
* Example:
* The number of rows of the field FieldName1 is zero, and the number of distinct values
* of the field FieldName2 is zero, then qScoreSummary is -18.
*/
qScoreSummary: number;
/**
* Association information about the field FieldName1 defined in qFieldPairName.
*/
qField1Scores: IFieldScores;
/**
* Association information about the field FieldName2 defined in qFieldPairName.
*/
qField2Scores: IFieldScores;
}
/**
* FieldScores...
*/
interface IFieldScores {
/**
* Field name.
* One of the field names defined in qFieldPairName.
*/
qFieldName: string;
/**
* Cardinality of a column/field divided by the number of rows in the table.
* If the cardinal ratio is 1, it means that the column is a candidate/primary key.
*/
qCardinalRatio: number;
/**
* Number of distinct matches between the two fields defined in qFieldPairName divided
* by the number of distinct values in the field qFieldName.
* If 0, it means that there are no common values between the two fields defined in qFieldPairName.
*/
qSymbolScore: number;
/**
* Number of matches between the two fields defined in qFieldPairName divided by the number
* of values in the field qFieldName.
* If 0, it means that there are no common values between the two fields defined in qFieldPairName.
*/
qRowScore: number;
}
/**
* ContentLibraryListItem...
*/
interface IContentLibraryListItem {
/**
* Name of the library.
*/
qName: string;
/**
* Is set to true if the library is specific to the app (not a global content library).
*/
qAppSpecific: boolean;
/**
* Information about publishing and permissions.
*/
qMeta: INxMeta;
}
/**
* ContentLibraryList...
*/
interface IContentLibraryList {
/**
* Information about the content library.
*/
qItems: IContentLibraryListItem;
}
/**
* DatabaseInfo...
*/
interface IDatabaseInfo {
/**
* Name of the product accessed by the provider
*/
qDBMSName: string;
/**
* If set to true, it means that the data source contains some databases.
*/
qDBUsage: boolean;
/**
* If set to true, it means that the data source contains some owners.
*/
qOwnerUsage: boolean;
/**
* Character string used after the database name
* Example with separator ".":
* FROM LinkedTablesData.dbo.Months
* Where:
* - LinkedTablesData is the database name
* - dbo is the owner name
* - Months is the table name
*/
qDBSeparator: string;
/**
* Character string used after the owner name
* Example with separator ".":
* FROM LinkedTablesData.dbo.Months
* Where:
* - LinkedTablesData is the database name
* - dbo is the owner name
* - Months is the table name
*/
qOwnerSeparator: string;
/**
* If set to true, it means that the database is displayed first, before the owners and tables.
*/
qDBFirst: boolean;
/**
* Prefix used with field, database or owner names that contain special characters or keywords.
*/
qQuotePreffix: string;
/**
* Suffix used with field, database or owner names that contain special characters or keywords.
*/
qQuoteSuffix: string;
/**
* List of the special characters
*/
qSpecialChars: string;
/**
* Name of the default database
*/
qDefaultDatabase: string;
/**
* List of the script keywords
*/
qKeywords: string[];
}
/**
* DatabaseOwner...
*/
interface IDatabaseOwner {
/**
* Name of the owner
*/
qName: string;
}
/**
* Database...
*/
interface IDatabase {
/**
* Name of the database.
*/
qName: string;
/**
* Is set to true if the database is set by default.
*/
qIsDefault: boolean;
}
/**
* DataField...
*/
interface IDataField {
/**
* Name of the field.
*/
qName: string;
/**
* Is set to true if the field is a primary key.
*/
qIsKey: boolean;
/**
* Is shown for fixed records.
* qOriginalFieldName and qName are identical if no field names are used in the file.
* qOriginalFieldName differs from qName if embedded file names are used in the file.
*/
qOriginalFieldName: string;
}
/**
* DataRecord...
*/
interface IDataRecord {
/**
* List of values inside the table.
* The first values (in result/qPreview/0/qValues) correspond to the field names in the table.
* The following values (from result/qPreview/1/qValues) are the values of the fields in the table.
*/
qValues: string[];
}
/**
* DataTable...
*/
interface IDataTable {
/**
* Name of the table.
*/
qName: string;
/**
* Type of the table.
* For examples: Table, View
*/
qType: string;
}
/**
* FieldDescription...
*/
interface IFieldDescription {
/**
* Internal number of the field.
*/
qInternalNumber: number;
/**
* Name of the field.
*/
qName: string;
/**
* List of table names.
*/
qSrcTables: string[];
/**
* If set to true, it means that the field is a system field.
* >> The default value is false.
*/
qIsSystem?: boolean | undefined;
/**
* If set to true, it means that the field is hidden.
* >> The default value is false.
*/
qIsHidden?: boolean | undefined;
/**
* If set to true, it means that the field is a semantic.
* >> The default value is false.
*/
qIsSemantic?: boolean | undefined;
/**
* If set to true, only distinct field values are shown.
* >> The default value is false.
*/
qDistinctOnly?: boolean | undefined;
/**
* Number of distinct field values.
*/
qCardinal: number;
/**
* Total number of field values.
*/
qTotalCount: number;
/**
* If set to true, it means that the field is locked.
* >> The default value is false.
*/
qIsLocked?: boolean | undefined;
/**
* If set to true, it means that the field has one and only one selection (not 0 and not more than 1).
* If this property is set to true, the field cannot be cleared anymore and no more selections can be
* performed in that field.
* >> The default value is false.
*/
qAlwaysOneSelected?: boolean | undefined;
/**
* If set to true a logical AND (instead of a logical OR) is used when making selections in a field.
* >> The default value is false.
*/
qAndMode?: boolean | undefined;
/**
* Is set to true if the value is a numeric.
* >> The default value is false.
*/
qIsNumeric?: boolean | undefined;
/**
* Field comment.
*/
qComment: string;
/**
* Gives information on a field. For example, it can return the type of the field.
* Examples: key, text, ASCII
*/
qTags: string[];
/**
* If set to true, it means that the field is a field on the fly.
* >> The default value is false.
*/
qIsDefinitionOnly?: boolean | undefined;
}
/**
* DelimiterInfo...
*/
interface IDelimiterInfo {
/**
* Name of the delimiter.
* Example:
* "Tab_DELIMITER"
*/
qName: string;
/**
* Representation of the delimiter value that is used in the script.
* Example:
* "'\t'"
*/
qScriptCode: string;
/**
* Delimiter character number used by the engine to determine how to separate the values.
*/
qNumber: number;
/**
* Is set to true if multiple spaces are used to separate the values.
*/
qIsMultiple: boolean;
}
/**
* FileDataFormat...
*/
interface IFileDataFormat {
/**
* Type of the file.
*/
qType: FileDataFormatType;
/**
* One of:
*
* - embedded labels (field names are present in the file)
* - no labels
* - explicit labels (for DIFfiles)
*/
qLabel: string;
/**
* One of:
*
* - None (no quotes)
* - MSQ (Modern Style Quoting)
* - Standard (quotes " " or ' ' can be used, but only if they
* are the first and last non blank characters of a field value.)
* This property is used for delimited files.
*/
qQuote: string;
/**
* String that marks the beginning of the comment line.
* Example: # or //
* The engine ignores the commented lines during the data load.
* This property is only used for delimited files.
*/
qComment: string;
/**
* Information about the delimiter.
* This property is used for delimited files.
*/
qDelimiter: IDelimiterInfo;
/**
* Character set used in the file.
*/
qCodePage: number;
/**
* Size of the header.
* Example: If the header size is 2, the first two rows in the file are considered as header and not as data.
* The header can contain the field names.
*/
qHeaderSize: number;
/**
* Record length.
* Each record (row of data) contains a number of columns with a fixed field size.
* This property is used for fixed record data files.
*/
qRecordSize: number;
/**
* Number of spaces that one tab character represents in the table file.
* This property is used for fixed record data files.
*/
qTabSize: number;
/**
* Is set to true, the end-of-file character is not taken into account during reload.
* This property is used for delimited files and fixed record data files.
*/
qIgnoreEOF: boolean;
/**
* Positions of the field breaks in the table.
* This property is used for fixed record data files.
*/
qFixedWidthDelimiters: string;
}
/**
* DataTableEx...
*/
interface IDataTableEx {
/**
* Name of the table.
*/
qName: string;
/**
* List of the fields in the table.
*/
qFields: IDataField[];
/**
* List of format specification items, within brackets.
* Examples of specification items:
*
* - file type
* - embedded labels, no labels
* - table is <table name>
*/
qFormatSpec: string;
}
/**
* FolderItem...
*/
interface IFolderItem {
/**
* Name of the folder item.
*/
qName: string;
/**
* Type of the folder item.
*/
qType: FolderItemType;
}
/**
* List of of content files (Information about the list of content files)
*/
interface IStaticContentList {
qItems: IStaticContentListItem;
}
/**
* StaticContentListItem...
*/
interface IStaticContentListItem {
/**
* Relative path to the content file. The URL is static.
* In Qlik Sense Enterprise, content files located:
*
* - in the /content/<content library name>/ folder are part of a global content library.
* - in the /appcontent/ folder are part of the app specific library.
*
* The content files are never embedded in the qvf file.
* In Qlik Sense Desktop, content files located:
*
* - in the /content/default/ folder are outside the qvf file.
* - in the /media/ folder are embedded in the qvf file.
*/
qUrlDef: string;
/**
* Relative path to the content file. The URL is static.
* In Qlik Sense Enterprise, content files located:
*
* - in the /content/<content library name>/ folder are part of a global content library.
* - in the /appcontent/ folder are part of the app specific library.
*
* The content files are never embedded in the qvf file.
* In Qlik Sense Desktop, content files located:
*
* - in the /content/default/ folder are outside the qvf file.
* - in the /media/ folder are embedded in the qvf file.
*/
qUrl: string;
}
/**
* StaticContentUrl...
*
* Note: In addition, this structure can return dynamic properties.
*/
interface IStaticContentUrl {
/**
* Relative path of the thumbnail.
*/
qUrl: string;
}
/**
* StaticContentUrlDef...
*
* Note: In addition, this structure can contain dynamic properties.
*/
interface IStaticContentUrlDef {
/**
* Relative path of the thumbnail.
*/
qUrl: string;
}
/**
* CalenderStrings...
*/
interface ICalenderStrings {
/**
* List of short day names.
*/
qDayNames: string[];
/**
* List of short month names.
*/
qMonthNames: string[];
/**
* List of long day names.
*/
qLongDayNames: string[];
/**
* List of long month names.
*/
qLongMonthNames: string[];
}
/**
* LocaleInfo...
*/
interface ILocaleInfo {
/**
* Decimal separator.
*/
qDecimalSep: string;
/**
* Thousand separator.
*/
qThousandSep: string;
/**
* List separator.
*/
qListSep: string;
/**
* Money decimal separator.
*/
qMoneyDecimalSep: string;
/**
* Money thousand separator.
*/
qMoneyThousandSep: string;
/**
* Current year.
*/
qCurrentYear: number;
/**
* Money format.
* Example: #.##0,00 kr;-#.##0,00 kr
*/
qMoneyFmt: string;
/**
* Time format.
* Example: hh:mm:ss
*/
qTimeFmt: string;
/**
* Date format.
* Example: YYYY-MM-DD
*/
qDateFmt: string;
/**
* Time stamp format.
* Example: YYYY-MM-DD hh:mm:ss[.fff]
*/
qTimestampFmt: string;
/**
* Information about the calendar.
*/
qCalendarStrings: ICalenderStrings;
/**
* First day of the week, starting from 0.
* According to ISO 8601, Monday is the first day of the week.
*
* 0 = Monday
* 1 = Tuesday
* ..
* 6 = Sunday
*
* If this property has not been set in a script, the returned value comes from the Windows operating system.
*/
qFirstWeekDay: boolean;
/**
* Is set to true if broken weeks are allowed in a year.
* According to ISO 8601, no broken weeks should be allowed.
* This property is not shown if set to false.
* If qBrokenWeeks is set to true, qReferenceDay is irrelevant.
* If this property has not been set in a script, the returned value comes from the Windows operating system.
*/
qBrokenWeeks: number;
/**
* Day in the year that is always in week 1.
* According to ISO 8601, January 4th should always be part of the first week of the year (qReferenceDay=4).
* Recommended values are in the range 1 and 7.
* If this property has not been set in a script, the returned value comes from the Windows operating system.
* This property is not relevant if there are broken weeks in the year.
*/
qReferenceDay: number;
/**
* First month of the year, starting from 1.
* According to ISO 8601, Januaryis the first month of the year.
*
* 1 = January
* 2 = February
* 12 = January
*
* If this property has not been set in a script, the returned value comes from the Windows operating system.
*/
qFirstMonthOfYear: number;
/**
* Locale name (following language tagging convention RFC 4646):
*
* <language>-<REGION>
* Where
* language is a lowercase ISO 639 language code
* REGION specifies an uppercase ISO 3166 country code.
* If this property has not been set in a script, the returned value comes from the Windows operating system.
*/
qCollation: string;
}
/**
* MediaListItem...
*/
interface IMediaListItem {
/**
* Relative path to the media file.
* The URL is static.
* Media files located:
*
* - in the /content/default/ folder are outside the qvf file.
* - in the /media/ folder are embedded in the qvf file.
*/
qUrlDef: string;
/**
* Relative path to the media file.
* Media files located:
*
* - in the /content/default/ folder are outside the qvf file.
* - in the /media/ folder are embedded in the qvf file.
*/
qUrl: string;
}
/**
* Lists the media files. Is the layout for MediaListDef.
*
* Note: This struct is deprecated.
*/
interface IMediaList {
/**
* Information about the list of media files.
* In Qlik Sense Desktop, the media files are retrieved from:
*
* %userprofile%\Documents\Qlik\Sense\Content\Default
* In Qlik Sense Enterprise, the media files are retrieved from:
*
* <installation_directory>\Qlik\Sense\Repository\Content\Default
* The default installation directory is ProgramData.
*/
qItems: IMediaListItem[];
}
/**
* EditorBreakpoint...
*/
interface IEditorBreakpoint {
/**
* Name of the breakpoint.
*/
qbufferName: string;
/**
* Line number in the script where the breakpoint is set.
*/
qlineIx: number;
/**
* If set to true then the breakpoint is enabled (in use).
*/
qEnabled: boolean;
}
/**
* TableRow...
*/
interface ITableRow {
/**
* Array of field values [{qText, qIsNumeric, qNumber},..]
*/
vqValue: IFieldValue[];
}
/**
* Size...
*/
interface ISize {
/**
* Number of pixels on the x axis.
*/
qcx: number;
/**
* Number of pixels on the y axis.
*/
qcy: number;
}
/**
* DerivedFieldsInTableData...
*/
interface IDerivedFieldsInTableData {
/**
* Name of the derived definition.
*/
qDefinitionName: string;
/**
* List of tags.
*/
qTags: string[];
/**
* Is set to true is the derived field is in use.
*/
qActive: boolean;
}
/**
* FieldInTableData...
*/
interface IFieldInTableData {
/**
* Name of the field.
*/
qName: string;
/**
* Is shown for fixed records.
* qOriginalFieldName and qName are identical if no field names are used in the file.
* qOriginalFieldName differs from qName if embedded file names are used in the file.
*/
qOriginalFields: string[];
/**
* ...
*/
qPresent: boolean;
/**
* This property is set to true if the field contains some Null values.
*/
qHasNull: boolean;
/**
* ...
*/
qHasWild: boolean;
/**
* This property is set to true if the field contains some duplicate values.
*/
qHasDuplicates: boolean;
/**
* This property is set to true if the field contains a synthetic key.
*/
qIsSynthetic: boolean;
/**
* Number of records that have values (i.e. not NULL) in the field as compared to the total number of records in the table.
*/
qInformationDensity: number;
/**
* Number of values that are non Null.
*/
qnNonNulls: number;
/**
* Number of rows in the field
*/
qnRows: number;
/**
* Number of distinct values in the field (in the current table) as
* compared to the total number of distinct values of this field (in all tables).
*/
qSubsetRatio: number;
/**
* Number of distinct values in the field.
*/
qnTotalDistinctValues: number;
/**
* ...
*/
qnPresentDistinctValues: number;
/**
* Tells if the field is a key field.
*/
qKeyType: TableRecordKeyType;
/**
* Comment related to the field.
*/
qComment: string;
/**
* List of tags related to the field.
*/
qTags: string[];
/**
* List of the derived fields.
*/
qDerivedFields: IDerivedFieldsInTableData;
}
/**
* Point...
*/
interface IPoint {
/**
* x-coordinate in pixels.
* The origin is the top left of the screen.
*/
qx: number;
/**
* y-coordinate in pixels.
* The origin is the top left of the screen.
*/
qy: number;
}
/**
* TableRecord...
*/
interface ITableRecord {
/**
* Name of the table.
*/
qName: string;
/**
* This property is set to true if the table is loose.
*/
qLoose: boolean;
/**
* Number of rows in the table.
*/
qNoOfRows: number;
/**
* Information about the fields in the table.
*/
qFields: IFieldInTableData[];
/**
* Information about the position of the table.
*/
qPos: IPoint;
/**
* Comment related to the table.
*/
qComment: string;
/**
* If set to true, Direct Discovery is used.
* Direct Discovery fields are not loaded into memory and remain in the external database.
*/
qIsDirectDiscovery: boolean;
/**
* This property is set to true if the table contains a synthetic key.
*/
qIsSynthetic: boolean;
}
/**
* SourceKeyRecord...
*/
interface ISourceKeyRecord {
/**
* Name of the key field.
*/
qKeyFields: string[];
/**
* Table the key belongs to.
*/
qTables: string[];
}
/**
* TextMacro...
*/
interface ITextMacro {
/**
* Name of the variable.
*/
qTag: string;
/**
* Order in which the variable was referenced during the script execution.
* The same number sequence is used for both qRefSeqNo and qSetSeqNo.
*/
qRefSeqNo: number;
/**
* Order in which the variable was updated during the script execution.
* The same number sequence is used for both qRefSeqNo and qSetSeqNo.
*/
qSetSeqNo: number;
/**
* Variable value.
*/
qDisplayString: string;
/**
* Is set to true if the variable is a system variable.
*/
qIsSystem: boolean;
/**
* Is set to true if the variable is a reserved variable.
*/
qIsReserved: boolean;
}
/**
* Rect...
*/
interface IRect {
/**
* Position from the left.
* Corresponds to the first column.
*/
qLeft: number;
/**
* Position from the top.
* Corresponds to the first row.
*/
qTop: number;
/**
* Number of columns in the page. The indexing of the columns may vary depending on whether the cells are
* expanded or not (parameter qAlwaysFullyExpanded in HyperCubeDef).
*/
qWidth: number;
/**
* Number of rows or elements in the page. The indexing of the rows may vary depending on whether the cells are
* expanded or not (parameter qAlwaysFullyExpanded in HyperCubeDef).
*/
qHeight: number;
}
/**
* TableViewTableWinSaveInfo...
*/
interface ITableViewTableWinSaveInfo {
/**
* Information about the position of the table.
*/
qPos: IRect;
/**
* Table name.
*/
qCaption: string;
}
/**
* TableViewBroomPointSaveInfo...
*/
interface ITableViewBroomPointSaveInfo {
/**
* Information about the position of the broom point.
*/
qPos: IPoint;
/**
* Name of the table.
*/
qTable: string;
/**
* List of fields in the table.
*/
qFi