Difference between revisions of "Dynamic Tags in QPR UI"

From Mea Wiki
Jump to navigation Jump to search
Line 1: Line 1:
 
QPR UI supports tags that are defined in this page.
 
QPR UI supports tags that are defined in this page.
 
== Supported tags ==
 
* [[Variable Tag in QPR UI|Variable tag]]
 
* [[Expression Tag in QPR UI|Expression tag]]
 
* [[Action Tag in QPR UI|Action tag]]
 
* [[Dataset Tag in QPR UI|Dataset tag]]
 
  
 
== General about dynamic tags ==
 
== General about dynamic tags ==
Line 25: Line 19:
 
* Newline characters are not allowed in tags (if a newline character is encountered, the searched text ends)
 
* Newline characters are not allowed in tags (if a newline character is encountered, the searched text ends)
  
Tag is assumed if tag start '''<#tagname''' (including the space) appears in the text. If the syntax doesn't continue according to the syntax rules, an error is caused. This means that the tag parser needs to know which tags names are available in the parsed content.
+
Tag is assumed if tag start '''<#tagname''' (including the space) appears in the text. If the syntax doesn't continue according to the syntax rules, an error is caused. This means that the tag parser needs to know which tags names are available in the parsed content. Examples of syntax that doesn't cause error, because the beginning is not interpreted as a tag (assuming "variable" tags can be used in the parsed content):
 
 
Examples of syntaxes that cause tag parsing error:
 
* <#variable name="var1"
 
* <#variable name="var1"escape="json">
 
* <#variable name="var1" escape=json">
 
* <#variable name="var1" escape=json>
 
* <#variable name="var"1" escape="json">
 
 
 
Examples of syntax that doesn't cause error, because the beginning is not interpreted as a tag (assuming "variable" tags can be used in the parsed content):
 
 
* '''<variable''' (hash character missing)
 
* '''<variable''' (hash character missing)
 
* '''<#variables''' (no space after "variable")
 
* '''<#variables''' (no space after "variable")
Line 40: Line 25:
 
Escaping examples:
 
Escaping examples:
 
* <#action name="drill\\down\"abc\""> (name parameter contents: drill\down"abc")
 
* <#action name="drill\\down\"abc\""> (name parameter contents: drill\down"abc")
 +
 +
== Supported tags ==
 +
* [[Variable Tag in QPR UI|Variable tag]]
 +
* [[Expression Tag in QPR UI|Expression tag]]
 +
* [[Action Tag in QPR UI|Action tag]]
 +
* [[Dataset Tag in QPR UI|Dataset tag]]
  
 
== Settings where tags can be used ==
 
== Settings where tags can be used ==

Revision as of 20:56, 23 January 2018

QPR UI supports tags that are defined in this page.

General about dynamic tags

Evaluating a tag means that

  1. The tag is parsed (detected) from the containing text
  2. Its intended behaviour is executed
  3. The tag definition is replaced by the tag's return value

Tags in textual settings are always evaluated before the setting value is used by the UI element. During the tag evaluation the setting value is treated as text only, although it might be JSON, SVG or CSS.

Tag syntax has the following general form: <#tagname parameter1="value1" parameter2="value2" ... parameterN="valueN">

In more details, tags have the following syntax:

  • Tag starts with <#tagname, where tagname is the name of the tag. There is always a space after the tagName.
  • Tag ends with > character.
  • Tag contains one or many parameters as name-value pairs (parameters are separated by space).
  • Parameter name is followed by = which is followed by parameter value in double-quotes (").
  • If parameter value contains double-quotes they are escaped with \ character, example \". \ character is escaped with \\.
  • Newline characters are not allowed in tags (if a newline character is encountered, the searched text ends)

Tag is assumed if tag start <#tagname (including the space) appears in the text. If the syntax doesn't continue according to the syntax rules, an error is caused. This means that the tag parser needs to know which tags names are available in the parsed content. Examples of syntax that doesn't cause error, because the beginning is not interpreted as a tag (assuming "variable" tags can be used in the parsed content):

  • <variable (hash character missing)
  • <#variables (no space after "variable")

Escaping examples:

  • <#action name="drill\\down\"abc\""> (name parameter contents: drill\down"abc")

Supported tags

Settings where tags can be used

Dynamic tags can be used in following settings:

  • Chart and Gauge presentation objects JSON settings field
  • Data Grid presentation object JSON settings field
  • HTML presentation object HTML code field
  • SVG presentation object SVG code field
  • Panel and any presentation object Name field
  • Dataset queries
  • ProcessAnalyzer and QPR Suite web service queries in data grid presentation object's Query tab