GIS Integration

IFS Cloud's GIS Map enables easy access to business information in a map. Business objects in IFS Cloud such as equipment objects, work orders and linear assets could be presented as graphical items (points, lines and polygons) on a map. For example, connect a business object of type linear asset to a pipeline in the map. Click on the pipeline and it shows business information from IFS and it enables business actions like navigate to its main page. One IFS business object could be connected to one or many geographical features on the map.

An established connection between a graphical item and a business object enables the following:

Examples of some GIS related operations (tools) in GIS Map:

Possible business related actions and business information shown are controlled by basic data configuration in IFS Applications. The graphical information shown in the map is controlled by ArcGIS system.

ArcGIS system is a proprietary commercial software developed by Esri and it provides an infrastructure for making geographic information available throughout a business organization, across a community, or openly on the Web.

Some general definitions in this document:

Enable business objects to be used in GIS Map

One business object in IFS is represented by one or many logical units (LU) in the database and it should be decided what business objects - what LUs to be used in GIS Map. For example, should it be possible to work with GIS Map from a maintenance & service perspective, from a linear assets perspective or both? This is decided by the customer with advice from a system administrator or expert on IFS Cloud. Once decided, LUs that represent the business objects should then be enabled, by configuration in GIS Integration. This is done in IFS Solution Manager/Object Connections page by entering the value GisintConnections in field for Service List.

Note: Also consider business security when enabling a logical unit for GIS integration in Object Connections page. A recommendation is to only select user interface views (UIV) for the logical unit because they are filtered to only show business information as made available for the user, according to business rules. The user will not be able to see business information where business rules is not made available for him/her. For example, it will not be possible to see business object information in GIS Map in site A if that site isn't added to the user. User interface views can often recognized by it's name because it often contains the text UIV; LINAST_LINEAR_ASSET_UIV, CMPUNT_COMPATIBLE_UNIT_UIV, EQUIPMENT_FUNCTIONAL_UIV, ACTIVE_SEPARATE_UIV etc. There could also be situations where business security is implemented for a database view but where the view name doesn't contain the text UIV.

Layer groups and user

A group of layers could be connected to one or many users. This enables different roles in an organization to see different kind of information in GIS Map, for example service technicians to see a sub-set of geographical information and planners, engineers etc. other types of geographical information. It's also possible to give some users the possibility to edit connections (connect & disconnect), by using editable layers, while other users only can see geographical- and business information, using a read-only layer. Users could also be defined with different background maps (basemaps). The customer could give information about roles & users in the organization, while IFS system administrator could create the wanted configuration.

Connect Objects in GIS Map

Connections between GIS objects and IFS business objects are created in GIS Map, simply by clicking on a GIS objects and by providing an IFS business object ID. It's possible to connect the same IFS business object to many GIS objects.

Enable navigation from pages in IFS to GIS Map

It's possibility to search on a few business objects in IFS, click View Map option which navigates and shows them in GIS Map. IFS business objects must in this case have a connection to GIS object and the user must have access to GIS object from the layer mapping configuration. IFS custom menus are used in order to add View Map option and this could be done by an IFS system administrator.

It is possible to create custom menus in respective business object pages using Page Designer. In the Commandgroup section add new item as "NavigationLink" and select Label as "View Map" and Page as "page/GISMapClient/MapPage".  For NavigateFilter values, it is possible to give values in different ways using List of Values or manually. After Choosing navigation parameters custom menu must be saved and published. The following are some examples to give navigation parameters:

When LuName and and KeyRef  attribute values are defined for a page NavigateFilter values are defined as below.

Note : For Functional Object page and Serial Object page LuName and KeyRef attribute values are defined. But to make navigation work, only LuName value must be hard coded in NavigateFilter. Refer example for Functional Object page as below.

If LuName and KeyRef attribute values are not defined for a business object page, in NavigateFilter both LuName and KeyRef values must be hard coded as below.

GIS Object Configuration

GIS Object configuration controls what business information and actions to show in GIS Map, for example:

Object Information dialog in GIS Map

Object Information dialog is shown once you click on a GIS object where an IFS business object connection exists. The dialog presents business information and useful actions in IFS. Three main parts are shown in the dialog:

All information (fields, tabs and actions) are controlled by GIS object configuration and defined on per business object's LU. What to show in the dialog is decided by the customer and configured by an IFS system administrator. Parameters are used in order to define actions and might require assistance from an expert on IFS Cloud.

Fields to be shown in Object Information dialog

Fields to be shown in Object Information dialog for a specific business object is defined by options in GIS object configuration.

Related information to be shown as tabs in Object Information dialog

A business object's related information could be shown in Object Information dialog as tabs. This is defined in GIS Object Configuration page.

The Where Condition connects the original logical unit and its related IFS business objects. When the connection does not use the key ref value, user needs to follow a defined format to build the Where Condition. Consider the following:

For example, enable work orders to be shown for a equipment object in Object Information dialog:

When KEY_REF is used together with other conditions, for example:

Note: The Where Condition is not case sensitive, but it's strictly required to be accurate with the format and field names.

Examples for Functional Objects in LU EquipmentFunctional

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  
Active Work Orders ACTIVE_SEPARATE_OVERVIEW  EQUIPMENT_OBJECT_SEQ = [#EQUIPMENT_OBJECT_SEQ]

Show the functional object's underlying structure:

Tab Name View Name Where Condition
Serial Parts EQUIPMENT_OBJECT_UIV SUP_CONTRACT = [#CONTRACT] AND SUP_MCH_CODE = [#MCH_CODE] AND SERIAL_NO IS NOT NULL
Functional Parts EQUIPMENT_OBJECT_UIV SUP_CONTRACT = [#CONTRACT] AND SUP_MCH_CODE = [#MCH_CODE] AND SERIAL_NO IS NULL
Locational Parts EQUIPMENT_OBJECT_UIV LOCATION_CONTRACT = [#CONTRACT] AND LOCATION_MCH_CODE = [#MCH_CODE] AND SERIAL_NO IS NULL
Process Parts EQUIPMENT_OBJECT_UIV PROCESS_CONTRACT = [#CONTRACT] AND PROCESS_MCH_CODE = [#MCH_CODE] AND SERIAL_NO IS NULL
Electrical Parts EQUIPMENT_OBJECT_UIV CIRCUIT_CONTRACT = [#CONTRACT] AND CIRCUIT_MCH_CODE = [#MCH_CODE] AND SERIAL_NO IS NULL

Examples for Linear Assets in LU LinastLinearAsset

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  
Active Work Orders ACTIVE_SEPARATE_OVERVIEW  LINAST_LINEAR_ASSET_SQ = [#LINEAR_ASSET_SQ] AND LINAST_LINEAR_ASSET_REV_NO = [#LINEAR_ASSET_REVISION_NO]

Examples for Linear Asset Segments in LU LinastSegment

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  

Examples for Case in LU CcCase

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  

Examples for Design Object in LU PlantObject

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  

Examples for Project in LU Project

Tab Name View Name Where Condition
Documents DOC_REFERENCE_OBJECT  
Characteristics TECHNICAL_SPEC_OBJ_INFO  

Examples for Programs in LU ProjectProgram

Tab Name View Name Where Condition
Projects PROJECT PROGRAM_ID = [#PROGRAM_ID]

Examples for Customers in LU CustomerInfo

Tab Name View Name Where Condition
Customer Orders CUSTOMER_ORDER CUSTOMER_NO = [#CUSTOMER_ID]

Examples for IAL views

IAL views could be used in order to show information as tabs in Object Information dialog. The following example gives a list of customers:

Tab Name View Name Where Condition View Schema
Customers IAL CUSTOMERS CUSTOMER_NAME IS NOT NULL IFSINFO

Actions in Object Information dialog

Actions could be added in Object Information dialog on fields (as links) or shown in the section called Actions. The wanted actions and how it should be displayed is controlled by GIS object configuration. A common example is where navigation is enabled from Object Information dialog to the business object's main page in IFS.

Data transfer parameters

Data transfer parameters are usually attributes of the object and possible to managed by the page.

Note: Parameters for data transfer will in most cases work but is also depend on how the target page, assistant, dialog etc. is implemented.

The definition of attributes is like this:

The data transfer goes to the target_attr_name from source_attr_name, like this: target_attr_name <-- source_attr_name

For example, create a data transfer parameter for LU PlantObject to open a design object's corresponding equipment object in an equipment object page: EquipmentObjectStructureNavigation/EquipmentObjectPageF

In GIS Object Configuration page, create a configuration for LU PlantObject, open Action tab and add:

The data transfer parameter should in this case be like this: MchCode = [#KEYA]

Or in other words, value in attribute KEYA should be sent into attribute MchCode. This parameter will enable the design object to be opened when used as an action, in Equipment Object Navigator page, (as long as a corresponding equipment object is created). In the above example we don't consider the value for site and it could be a potential problem if the same value for Object ID exists on several sites. The data transfer parameter when also considering site, should look like this: Contract = [#SITE]^MchCode = [#KEYA]

Parameters for data transfer could get its values in a few different ways:

Static values:

target_attr_name ='value1'^target_attr_name1 ='value2'

Example: Contract='101'^MchCode='6000-1'

Dynamic value, taken from the GIS object:

target_attr_name = [#source_attr_name]

Example: Contract=[#MCH_CODE_CONTRACT]

Examples for Functional Objects in LU EquipmentFunctional

Database view is in this example EQUIPMENT_FUNCTIONAL_UIV in Solution Manager/Object Connections page.

Actions to open pages:

Page Name Action Name Parameters
FunctionalObject/Form Functional Object MchCode=[#MCH_CODE]^Contract=[#CONTRACT]
FunctionalObject/List Functional Objects MchCode=[#MCH_CODE]^Contract=[#CONTRACT]
PrepareWorkOrder/Form Work Orders MchCode=[#MCH_CODE]^Contract=[#CONTRACT]
EquipmentObjectStructureNavigation/EquipmentObjectPageF Equipment Object Navigator MchCode=[#MCH_CODE]^Contract=[#CONTRACT]

Examples for Linear Assets in LU LinastLinearAsset

Database view is in this example LINAST_LINEAR_ASSET_UIV in Solution Manager/Object Connections page.

Actions to open pages:

Page Name Action Name Parameters
LinearAsset/Form Linear Asset Information LinearAssetSq = [#LINEAR_ASSET_SQ]

Examples for Elements in LU LinastElement

Database view is in this example LINAST_ELEMENT_UIV in Solution Manager/Object Connections page.

Actions to open pages:

Page Name Action Name Parameters
LinearAsset/Form Linear Asset Information LinearAssetSq= [#LINEAR_ASSET_SQ]^LinearAssetRevisionNo=[#LINEAR_ASSET_REVISION_NO]

Examples for Work Orders in LU ActiveSeparate

Database view is in this example ACTIVE_SEPARATE in Solution Manager/Object Connections page.

Action to open pages:

Page Name Action Name Parameters
PrepareWorkOrder/Form Work Order WoNo=[#WO_NO]
WorkOrderStructureNavigator/WorkOrderPage Work Order Structure WoNo=[#WO_NO]
FunctionalObject/Form Functional Object MchCode=[#MCH_CODE]^Contract=[#CONTRACT]

Condition in GIS Layer Mapping and Object Configuration pages

Users are by default not allowed to enter SQL code in IFS pages. This is prevented on purpose because of security reasons. However, some configuration in GIS Maps enables some limited SQL conditions to be entered. The following could be controlled by using SQL:

The possibility for a user to enter SQL conditions is controlled by a system privilege called DEFINE_SQL. The system privilege DEFINE_SQL is found in Permission Set Detail page, in the System Privileges tab. Theoption for DEFINE_SQL enables users to enter SQL in above condition fields.