Difference between revisions of "Dynamic Tags in QPR UI"

From Mea Wiki
Jump to navigation Jump to search
Line 1: Line 1:
QPR supports tags that are defined in this page.
+
QPR UI supports tags that are defined in this page.
  
 
== Supported tags ==
 
== Supported tags ==
Line 7: Line 7:
 
* [[Dataset Tag in QPR UI|Dataset tag]]
 
* [[Dataset Tag in QPR UI|Dataset tag]]
  
== Dynamic tags evaluation principles ==
+
== General about dynamic tags ==
In some UI element textual settings it is possible to use some of the below defined tags to achieve more dynamic behaviour of dashboards.
 
 
 
 
'''Evaluating''' a tag means that
 
'''Evaluating''' a tag means that
 
# The tag is parsed (detected) from the containing text
 
# The tag is parsed (detected) from the containing text
Line 17: Line 15:
 
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.
 
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 ==
 
 
Tag syntax has the following general form: '''<#tagname parameter1="value1" parameter2="value2" ... parameterN="valueN">'''
 
Tag syntax has the following general form: '''<#tagname parameter1="value1" parameter2="value2" ... parameterN="valueN">'''
  

Revision as of 16:28, 23 January 2018

QPR UI supports tags that are defined in this page.

Supported tags

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 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)
  • <#variables (no space after "variable")

Escaping examples:

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

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