You are on page 1of 15

Integration Framework Configuring Integration Controls to customize

your integration processing.

Introduction
The Integration Framework supports the use of Integration Controls and Processing Rules
to allow customers to control and customize their integration transaction processing
through Configuration. This document explains the configuration of Integration Controls.

Table of Contents
Overview............................................................................................................................. 2
Outbound processing ...................................................................................................... 3
Inbound processing ......................................................................................................... 4
Integration Control Definition ............................................................................................ 5
Defining Integration Controls ......................................................................................... 6
Defining a Value Control............................................................................................ 8
Defining a List Control ............................................................................................... 9
Defining a Boolean Control ...................................................................................... 10
Defining a Cross Reference (XRef) Control............................................................. 11
Enabling the Use of Controls............................................................................................ 12
Associate the control to a Publish Channel or Enterprise Service................................ 12

7/29/2013

Page 1

Integration Framework Configuring Integration Controls to customize


your integration processing.

Overview
The Maximo* Integration Framework (MIF) provides the capability to configure
integration controls and processing rules to allow customers to customize their
integration processing without (or in addition to) using custom Java User Exit code.
Some the common uses of these features is to Set an XML tag value in an integration
message or to filter integration messages such that only certain integration messages are
sent to an external application.
The example screen shots included in this document are from a Maximo 7.5.x
environment, however, the majority of the functionality is also available in the Maximo
7.1.x versions as well.
*NOTE: All capabilities provided in the Maximo application also apply the Smart Cloud
Control Desk (SCCD) application

7/29/2013

Page 2

Integration Framework Configuring Integration Controls to customize


your integration processing.
Where are integration controls and processing rules leveraged within the flow of an
integration message?

Outbound processing
External Application / Service

End Point

Java

JMS Queue

XSL Map

User Exit

Processing Class

User Exit

Processing Rules

Work Order Approval

MAXIMO

MXWO Object Structure

Customization - Optional

Processing Rules applied


Processing
Integration Rules
Controls
applied
implemented

For outbound processing, the processing rules are executed after the integration message
(XML) is formed by the MIF based on the Object Structure definition. After the
processing rules are executed, the integration message flows through the Java and XSL
customization layers (if implemented). Integration controls can be implemented as part
of processing rules or referenced by the java customization code.

7/29/2013

Page 3

Integration Framework Configuring Integration Controls to customize


your integration processing.
Inbound processing
External Application / Service

Java

Integration
Servlet

User Exit

Processing Class

User Exit

XSL Map

Processing Rules

Work Order Status


Update

MAXIMO

MXWO Object Structure

Customization - Optional

Processing Rules applied


Processing
Integration Rules
Controls
applied
implemented

For inbound processing, the processing rules are executed after the integration message
flows through the Java and XSL customization layers (if implemented). The integration
message (XML) must be in the format defined by the Object Structure when the message
reaches the Processing Rules layer. Integration controls can be implemented as part of
processing rules or referenced by the java customization code.

7/29/2013

Page 4

Integration Framework Configuring Integration Controls to customize


your integration processing.

Integration Control Definition


Integration controls are defined to support processing logic of an integration message.
By using an integration control, this offers configurability so that customers can
implement values that are specific to their Maximo implementation.
A common use of an integration control is to define a list of values that are used to filter
(configured in a processing rule) the sending of a transaction such as a work order or
purchase order. So one implementation could set their list of Status values to filter on
'Approve' and 'Close' while another implementation could set their value to just
'Approve'. Another common use of an Integration Control is to set a field value in an
integration message.
There are four types of integration controls that you can define:
1. Value defines a single value for the control
2. List defines a list of values (1 or more) for the control
3. Boolean defines the control value as True or False
4. Cross Reference defines a pair of values (internal and external) that are used to
map one value to the other.
To use integration controls as part of a processing rule, you need to:
1. Define the control
2. Associate the control to a Publish Channel or Enterprise Service
3. Implement the Control as part of a Processing Rule
4. Assign values to the control for the External System using the Publish
Channel/Enterprise Service.

7/29/2013

Page 5

Integration Framework Configuring Integration Controls to customize


your integration processing.
Defining Integration Controls
The dialog to create integration controls is available from the Publish Channels and
Enterprise Services applications.

7/29/2013

Page 6

Integration Framework Configuring Integration Controls to customize


your integration processing.
The dialog shows existing integration controls that can be maintained by selecting the
Edit Details icon on the left side of each row. To create a new control, use the dropdown button and select the desired control type:

When you create control and assign one or more values, the values are considered the
default values for that control. As you will see further down in this document, those
default values will be copied to the external system level where they can be used and/or
changed to values specific for an external system.

7/29/2013

Page 7

Integration Framework Configuring Integration Controls to customize


your integration processing.
Defining a Value Control
A Value Control will hold a single value. When defining the control, you need to assign a
name, description and the value. You can also assign a domain to the control which
limits the entry of values to be a value that exists in that domain. For instance, you are
using an integration control to filter Asset transactions based on an asset type. Asset
Types on the asset record are assigned using the ASSETTYPE domain, therefore you
would want the integration control to only hold values that are valid asset types as
defined in the domain. By assigning the domain to the integration control, this will limit
the value entered in the control to be valid asset type.

Note: there is no selection capability for the Default Value field based on the domain list.
However a validation is executed when you tab out of the field to ensure the value exists
in the Domain.

7/29/2013

Page 8

Integration Framework Configuring Integration Controls to customize


your integration processing.
Defining a List Control
A List Control is similar to a value control except that it will hold multiple values. When
defining the control, you need to assign a name, description and one or more values. As
with the Value Control, you can also assign a domain to the control which limits the entry
of values to be a value that exists in that domain. The example below shows the
POSEND control which holds multiple values tied to the POSTATUS domain. This
control is used in filtering outbound Purchase Order messages.

Note: there is no selection capability for the Default Value field based on the domain list.
However a validation is executed when you tab out of the field to ensure the value exists
in the Domain.

7/29/2013

Page 9

Integration Framework Configuring Integration Controls to customize


your integration processing.
Defining a Boolean Control
A Boolean Control holds a True or False value that can be used as part of an integration
processing rule. This control could be used to compare against an object attribute that is
a Boolean type and when there is a match the integration message would be processed (or
skipped) When defining the control, you need to assign a name, description and select
whether the default value will be true (checked) or false (unchecked).

7/29/2013

Page 10

Integration Framework Configuring Integration Controls to customize


your integration processing.
Defining a Cross Reference (XRef) Control
A Cross Reference Control allows you to map values from your Maximo data to a
corresponding external value. For example, you may always map a Site value to a
specific value recognized by the application you are integrating with. This control allows
you to configure that mapping once and then use the same control across multiple
integration points that results in a consistent mapping. When defining the control, you
need to assign a name, description and one or more Default and External values. The
Default value is the Maximo-known value. As with the Value and List Controls, you can
also assign a domain to the control which limits the entry of default values to be a value
that exists in that domain.

Note: there is no selection capability for the Default Value field based on the domain list.
However a validation is executed when you tab out of the field to ensure the value exists
in the Domain.

7/29/2013

Page 11

Integration Framework Configuring Integration Controls to customize


your integration processing.

Enabling the Use of Controls


Associate the control to a Publish Channel or Enterprise Service
An Integration Control may be used in Processing Rules on one or more Publish
Channels and/or Enterprise Services. To associate an integration control to a Publish
Channel, you need to select that channel in the Publish Channels application and then
select Associate Integration Controls under the Select Action menu.
NOTE: The description here uses a Publish Channel as an example. The same process
applies to Enterprise Services.

7/29/2013

Page 12

Integration Framework Configuring Integration Controls to customize


your integration processing.

In the dialog above, you can select one or more controls to associate to the selected
Publish Channel.
Controls/Default values copied to External System
When you associate a control to a Publish Channel, this will copy the control with its
default values to any External System that has that Publish Channel configured (the
publish channel does not need to be marked as enabled at the external system level). At
the external system level is where the default values can be overridden, if needed, with
values specific to that external system.
If a control is used for multiple channels (or enterprise services), it is copied down to the
external system only once. Values of the control at the external system level apply to all
channels/services that are configured to use that control (values are not channel/servicespecific).
Controls/Default values copied to External System (2)
Another way controls can be copied to an external system is when the publish channel
(with associated controls) is added to an external system (where that control was not
already associated to the external system via another channel or service).
Changing default values of Controls
For a control that is already copied (with its default values) to an external system, if the
default values are changed (adds/deletes) in the Publish Channels and/or Enterprise
Services applications, those changes are not copied down to the external system.

7/29/2013

Page 13

Integration Framework Configuring Integration Controls to customize


your integration processing.
Assign values to the control for an External System
Once a control is pushed down to the External system level, the default values can be
updated using the Setup Integration Controls option under the Select Action menu within
the External Systems application:

The values assigned to the control apply to any use of the control on all channels/services
configured for the external system.

7/29/2013

Page 14

Integration Framework Configuring Integration Controls to customize


your integration processing.
In addition, there is an option to provide an override value based on the Site and/or
Organization that the transaction is tied to. In the screen shot below, a value of WAPPR
was selected for Site BEDFORD for the POSEND control. This allows you to have
different values for the control based on the transactions Org or Site.

7/29/2013

Page 15

You might also like