XC (TQL): Difference between revisions
No edit summary |
|||
| Line 31: | Line 31: | ||
} ] | } ] | ||
</pre> | </pre> | ||
Also Consider the situation where a TQL statement is present in the Text Body of a Template Text Panel. This Template Panel is applied on neighborhoods, creating two Text Panel instances, one automatically linked to Neighborhood 'East Side' and one to 'West Side. | |||
The TQL statement | The TQL statement | ||
<pre> | <pre>SELECT_NAME_WHERE_AREA_IS_XC</pre> is internally replaced with a list of TQL statements, separated by comma's, | ||
<pre> | <pre>SELECT_NAME_WHERE_AREA_IS_1, SELECT_NAME_WHERE_AREA_IS_3</pre> | ||
Its result will be a list of names, separated by comma's, for example: | Its result will be a list of names, separated by comma's, for example: | ||
<pre>"Upper Right", "Lower Right"</pre> | <pre>"Upper Right", "Lower Right"</pre> | ||
Revision as of 14:36, 20 May 2026
Instead of specifying a clause parameter with a particular Item ID, it is possible to use the 'XC' characters for its value. The result of using 'XC' for the clause value, is the automatic creation of multiple TQL statements, one with each Item ID for that Clause Parameter, but only the Items that are covered by the Search Polygon of the TQL statement. Items are only included if they are overlapped by the Search Polygon. Internally, the resulting TQL statements are placed in a single array; Similarly the result will be an array of TQL results.
This Search Polygon is determined by the linked content item. Currently content item linkage only occurs with Template Text and Excel Panels and therefore XC should only be used for this Panels.
Example


Consider the following (simplified) Neighborhood data of a project:
[ {
"id" : 0, "name" : "East Side",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 250.0, -500.0 ], [ 500.0, -500.0 ], [ 500.0, 0.0 ], [ 250.0, 0.0 ], [ 250.0, -500.0 ] ] ] ] }
}, {
"id" : 1, "name" : "West Side",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 0.0, -500.0 ], [ 250.0, -500.0 ], [ 250.0, 0.0 ], [ 0.0, 0.0 ], [ 0.0, -500.0 ] ] ] ] }
} ]
and the Area data:
[ {
"id" : 0, "name" : "Upper Left",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 110.0, -110.0 ], [ 110.0, -100.0 ], [ 100.0, -100.0 ], [ 100.0, -110.0 ], [ 110.0, -110.0 ] ] ] ] }
}, {
"id" : 1, "name" : "Upper Right",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 435.0, -95.0 ], [ 425.0, -95.0 ], [ 425.0, -105.0 ], [ 435.0, -105.0 ], [ 435.0, -95.0 ] ] ] ] }
}, {
"id" : 2, "name" : "Lower Left",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 165.0, -425.0 ], [ 165.0, -415.0 ], [ 155.0, -415.0 ], [ 155.0, -425.0 ], [ 165.0, -425.0 ] ] ] ] }
}, {
"id" : 3, "name" : "Lower Right",
"polygons" : { "type" : "MultiPolygon", "coordinates" : [ [ [ [ 315.0, -395.0 ], [ 325.0, -395.0 ], [ 325.0, -385.0 ], [ 315.0, -385.0 ], [ 315.0, -395.0 ] ] ] ] }
} ]
Also Consider the situation where a TQL statement is present in the Text Body of a Template Text Panel. This Template Panel is applied on neighborhoods, creating two Text Panel instances, one automatically linked to Neighborhood 'East Side' and one to 'West Side.
The TQL statement
SELECT_NAME_WHERE_AREA_IS_XC
is internally replaced with a list of TQL statements, separated by comma's,
SELECT_NAME_WHERE_AREA_IS_1, SELECT_NAME_WHERE_AREA_IS_3
Its result will be a list of names, separated by comma's, for example:
"Upper Right", "Lower Right"
Clause Parameters
The XC value can be used in the following TQL Clause parameters:
Notes
- The following variants on XC exist:
See also