Scope - (Built-in Functions)
Expression Syntax: dts.property
Example:
dts._scale#
accesses the properties/attributes of the dataset of the current item. In this example the dataset scale will be returned.
Expression Syntax: Geometry.Length
Example:
Geometry.length
returns the length of the item
Allows access to properties of the current items that come from a joined database table.
Expression Syntax: Join()
Example:
Join.ADDRESS or Join.[FIRST NAME]
Expression Syntax: JoinItem
Example:
JoinItem(Overlay(“Overlay 1”,{ST_Intersects(geometry,this.geometry)}))._area#
returns the area of an item from Overlay 1 that intersects with the current item. If there is more than one item found, an arbitrary item is chosen.
Expression Syntax: swd.property
Example:
swd._nOverlay&
returns the number of overlays in the SWD
Expression Syntax: this.property
Example:
this._area#
returns the area of each of the items on the overlay.
Note regarding the use of the "this" operator:
Normally everything inside braces {...} is executed on item(s) in another overlay. However when using the this function, you can 'point back' to the original, current overlay.
For eg.,
'Overlay("Roads",{ST_Intersects(this.geometry,geometry)'.
'this.geometry' evaluates to the geometry of the current item in the current overlay, and 'geometry' evaluates to the geometry of items in the overlay 'Roads'.
'this.geometry' is evaluated first and only once.
The effect is then as if the expression 'ST_Intersects(ST_GeomFromText("POLYGON((...))"), geometry)' would be executed on the overlay 'Roads'.