Define Layer Mapping
[About GIS Integration] [GIS Concepts]
[GIS Customizations] [GIS
Integration]
Explanation
This activity is the first of two steps to enable geodata to be shown in GIS Map
window. This activity should be
performed by a system administrator or equivalent person. The second step is to
add layers and users in GIS Layer Group window.
Prerequisites
A map or a feature services should have been created and made available on
ArcGIS servers:
- Editable layers should have the service URL format: http://<host>/<instance>/rest/services/<serviceName>/FeatureServer
- Read only layers and background maps (basemaps) should have the URL
format: http://<host>/<instance>/rest/services/<serviceName>/MapServer
- Added layers could have been made available on many different ArcGIS
servers, both locally and on cloud services like ArcGIS online and ArcGIS
portal.
The following are described in ArcGIS online documentation and must have been
completed before entering an URL in layer mapping:
- How to install an ArcGIS server or how to use the cloud service called
ArcGIS online.
- How to create layers.
- How to publish layers to a service on a ArcGIS server.
- How to make a service available for users on an ArcGIS server.
- How to define wanted operations on services: Create, Delete, Query, Sync
and Update on a ArcGIS server.
Logical units (LU) should have been defined with value GisintConnections as a service
name in Solution Manager/Configuration/Object Connections. This enables LU to
be shown and selected from List of Value in GIS Object Configuration
window.
User should be have been assigned with
DEFINE_SQL
system privilege in order to enable values to be entered in Condition field.
System Effects
The following three different types of geodata will be made available in
GIS Map window:
- GIS objects using editable layers and where business object connections
can be made.
- GIS objects using read only layers.
- Background map (basemap), like maps and building layouts.
More information about editable layers, read only layers and basemaps are
found in GIS Concepts.
The following is also valid for the below layer mapping:
- GIS objects in GIS Map window is not shown until both GIS
layer mapping and GIS layer group configuration is completed.
- Secured layers (private) are not shown in GIS Map, until proxy
configuration is completed: Define
GIS Settings and GIS Concepts.
- Enter a value for sort order to control in which order layers are shown
and loaded GIS Map window. Try to change sort order if a
point feature is hidden behind a polygon or a line.
- It's not possible to add the same layer twice. URL and layer ID must
differ.
Window
GIS Layer
Mapping
Related Window Descriptions
GIS Layer Mapping
Procedures
Add Editable Layers in GIS Map
window:
- Open the Layer Mapping window.
- Click New and enter a service URL in Map Service URL
field. The service URL entered here should enable editing e.g. feature
service and must end with the text FeatureServer.
- Enter a Layer ID number for the layer. (Open the service URL in a web browser to see
available layer IDs.)
- Enter a value for Layer Display Name.
- Select LU Name from the List of Values.
- Optionally, enter a SQL Condition. This condition filter values
shown in Link Object dialog. The value in the condition
field must follow the format: column_name, value and operator.
For example, a logical unit LinastLinearAsset with database view
LINAST_LINEAR_ASSET_UIV:
- Condition: revision_status_db in ('Preliminary','Active') and
linear_asset_type = 'ROAD-TRUNK'.
- Select Layer Type with value Editable.
- Optionally, select a Sort Order. This controls the order in which layers
are shown in layer navigator and in which order layers are loaded in GIS
Map.
- Click Save.
Next step is to: Define Layer
in GIS Layer Group.
Note: A layer defined as Editable must also
be configured in the proxy, as described in
Define GIS Settings and
GIS Concepts. A layer defined as editable and
added in proxy, enables the following operations:
- Connect or disconnect a GIS object to or from a business object in IFS:
Connect a GIS Object
to a IFS Business Object.
- Create GIS objects or edit GIS object attributes using the Tools/Editing:
Use GIS Map Tools.
Add Read Only Layers in GIS Map
window:
- Open the Layer Mapping window.
- Click New and enter a service URL in Map Service URL
field. The service URL entered here should direct to a read only map
service and must end with the text MapServer.
- Enter a Layer ID number for the layer. (Open the service URL in a web browser to see
available layer IDs.)
- Enter a value for Layer Display Name.
- Select Layer Type with value Read Only.
- Click Save.
Next step is to: Define Layer
in GIS Layer Group.
Add Basemaps - in GIS Map
window:
- Open the Layer Mapping window.
- Click New and enter a service URL in Map Service URL
field. The service URL entered here should direct to a read only map
service and must end with the text MapServer.
- Enter a value for Layer Display Name.
- Select Layer Type with value Basemap.
- Click Save.
Next step is to: Define
Layer in GIS Layer Group.
Enter a Definition Expression - Filter GIS objects in GIS Map
window by using a definition expression:
- Open the Layer Mapping window.
- Double click in the field Definition Expression to open a field
editor.
- Enter a layer's attribute name and a valid SQL search criteria:
- color = 'Red' shows GIS objects in GIS Map window where its value
is equal to Red in the attribute field with name color.
- color like 'B%' shows GIS objects where its values starts with a
B like Blue and Brown.
- color in ('Blue','Yellow') shows GIS objects where the list
consists of values Blue and Yellow.
- Add layer to your user in Layer Group window.
- Open GIS Map and toggle on the layer in Layer Navigator.
- GIS objects are now shown according to the above definition expression.
The following is valid for a definition expression:
- Definition Expression is optional.
- It filters GIS objects in GIS Map by using layer's
attributes (fields) and values in ArcGIS.
- A correctly entered expression has effect on both editable layers
(feature service) and read only layers (map service).
- A recommendation is to first test definition expression on the layer's
REST service query page on ArcGIS, before entering it in
Layer Mapping window. If the query retrieves values on Rest
service page, then it will also work when used as a definition
expression in GIS Integration. How to enter a successful query on a
layer by using the REST service page is described in ArcGIS
online documentation.
- Possible attributes (fields) to search on are found on the layer's REST
service page, under a section called Fields.
- Possible SQL operators:
= |
Equal |
<> |
Not equal. Note: This operator may also be written as != |
> |
Greater than |
< |
Less than |
>= |
Greater than or equal |
<= |
Less than or equal |
BETWEEN |
Between an inclusive range |
LIKE |
Search for a pattern |
IN |
To specify multiple possible values for a column |
Enter Label Options - Show a text on GIS objects by using
label options.
- Open the Layer Mapping window.
- Search for layers where layer type
is Editable. (Label options are only enabled for
editable layers.)
- Double click in the field Label Options to open
the field editor.
- Enter values for text, color, size, font and visible
scale ranges in a list, by using the following attributes:
labelText, fontColor, fontSize, fontFamily, minScale and
maxScale.
- A complete list could look like this:
{
"labelText": "Historical
Work Order",
"fontColor": "#FF0000",
"fontSize": 14,
"fontFamily": "Arial",
"minScale": "165000000",
"maxScale": "5000"
}
The above list will show the text
Historical Work Order on
GIS objects in red color with font size 14 and font type Arial.
The following is valid for a label option:
- The label option functionality in the GIS integration is
not the same as the more advanced configuration of labels
available in ArcGIS Online and in ArcGIS Desktop Tools. The
label options functionality in the GIS integration is a quick
and easy way of creating labels, by using a set of available
control attributes, without having to use any ArcGIS
tools.
- Label options only apply to editable layers.
- Visible scale ranges:
Minimum
scale (minScale) - Label will not be drawn if you zoom out beyond the defined
scale value. For example, enter a high value like 165000000 and the label will not
be shown when zooming out beyond the scale 1:165000000.
Maximum
scale (maxScale) - Label will not be drawn if you zoom in beyond the defined
scale. For example, enter a high value like 5000 and the label will not be shown
when zooming in beyond the scale 1:5000.
- The value for color (fontColor) should be entered in hexadecimal format, like this:
Black: #000000
Red: #FF0000
Lime: #00FF00
Blue: #0000FF
The above values are just examples. Available hexadecimal values for
colors can easily be found on the Internet.
- It's possible to show attribute (field) values from the layer in ArcGIS. Possible
fields to show values from, are found on the layer's feature service, on ArcGIS
REST interface. Open the REST URL for the layer's service in a web browser.
Fields for the layer are shown in a section called Fields. For example
consider a layer with the following fields:
ROUTE (
type: esriFieldTypeString , alias: ROUTE , editable: true , nullable: true ,
length: 15 )
STREET (
type: esriFieldTypeString , alias: NAME , editable: true , nullable: true ,
length: 40 )
- The field name is case sensitive. It's a good idea to review layer's
field name carefully and enter it in the exact same way as shown on the
layer's ArcGIS REST interface.
- Field names should be entered within curly brackets, like this: "labelText":
"{ROUTE} {STREET}"
- Text can be added like this: "labelText": "Route:
{ROUTE} Name:
{STREET}"
- The complete list of attributes and attributes for fields should be
enclosed by curly brackets. The following will show values from the ROUTE
field and the STREET field:
{
"labelText":
"Route: {ROUTE} Name: {STREET}",
"fontColor": "#FF0000",
"fontSize": 14,
"fontFamily": "Arial",
"minScale": "165000000",
"maxScale": "5000"
}
- Labels might not appear in situations when GIS objects in the map are
close to each other. The solution is to zoom in.
Use Proxy - Set the layer to always use the proxy.
It's possible to allow automatic access to secured map services, without showing
ArcGIS logon dialog, by entering the ArcGIS user credentials in the proxy. This
requires the setting Use
Proxy to
be enabled on the layer in Layer
Mapping window.
In all other situations the setting Use
Proxy can
be disabled. Information about how to configure the proxy is described in
Define GIS Settings and
GIS Concepts.
- Open the GIS Layer Mapping window.
- In GIS Layer Mapping window, search for a
layer.
- Make sure that the following is valid for the selected layer:
- Map service is secured (private) and requires the user to logon by entering
credentials.
- Map service URL is added in proxy configuration, as described in
Define GIS Settings and
GIS Concepts.
- Map service URL in proxy configuration is defined with user name and
password, as described in
Define GIS Settings and
GIS Concepts..
- If the above is valid, toggle on the check box Use Proxy and saved
the changes.
- Open GIS Map window and notice how
the user is automatically logged in to the map service without having to
manually enter credentials. A token is automatically generated by the REST
service and valid for 60 minutes.