View
239
Download
6
Category
Preview:
Citation preview
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 1
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
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 2
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
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 3
Where are integration controls and processing rules leveraged within the flow of an
integration message?
Outbound processing
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.
External Application / Service
MXWO Object Structure
MAXIMO
XSL Map
Processing Rules
JMS Queue
Work Order Approval
User Exit
User Exit
Processing Class
Java
User Exit
User Exit
Processing Class
User Exit
User Exit
Processing Class
Java
Customization - Optional
End Point
Processing Rules applied
Processing Rules appliedIntegration Controls implemented
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 4
Inbound processing
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.
External Application / Service
MXWO Object Structure
MAXIMO
XSL Map
Processing Rules
Integration
Servlet
Work Order Status
Update
User Exit
User Exit
Processing Class
JavaUser Exit
User Exit
Processing Class
User Exit
User Exit
Processing Class
Java
Customization - Optional
Processing Rules applied
Processing Rules appliedIntegration Controls implemented
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 5
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 6
Defining Integration Controls
The dialog to create integration controls is available from the Publish Channels and
Enterprise Services applications.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 7
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 ‘drop-
down’ 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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 8
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 9
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 10
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).
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 11
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 12
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 13
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/service-
specific).
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 14
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.
Integration Framework – Configuring Integration Controls to customize
your integration processing.
7/29/2013 Page 15
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 transaction’s Org or Site.
Recommended