Skip to Main Content
Return to Navigation

Defining Message and Service Operation

This section provides discusses how to:

Pages Used to Define Message and Service Operation

Page Name

Definition Name

Navigation

Usage

Message Definition

IB_MESSAGE_BUILDER

select PeopleTools, then select Integration Broker, then select Integration Setup, then select Messages, then select Message Definition

Define a message.

Services

IB_SERVICEDEFN

select PeopleTools, then select Integration Broker, then select Integration Setup, then select Services, then select Services

Define or update a service.

Service Operation Definition - General

IB_SERVICE

select PeopleTools, then select Integration Broker, then select Integration Setup, then select Service Operations, then select General

Define or update a service operation.

Service Operation Definition - Handler

IB_SERVICEHDLR

select PeopleTools, then select Integration Broker, then select Integration Setup, then select Service Operations, then select Handler

Specify handler name, the handler type, and the implementation method for the handler.

Handler Details

IB_SERVICEHDLR_SEC

Click the Details link on the Service Operation Definition - Handler page.

Specify the handler details.

Defining Integration Broker Message

The Integration Broker message created for EMC needs to be a rowset-based message that includes the EMC records listed in this table:

Record

Level

Description

EOAWEMC_HDR

0

Header record for EMC.

EOAWEMC_TXNDATA

1

Transactional data record for EMC.

EOAWEMC_PROMPTS

1

Prompting record for EMC. Application will add records for the specific prompt action.

EOAWEMC_ERRORS

1

Error record for EMC.

The application transaction record structure is added at level 2 under EOAWEMC_TXNDATA.

This example shows the Record Only view for a message created to approve expense reports. In this example, the application records that contain transactional data start with EX_EMC.

Image: Records Only view of a message used for EMC

This example illustrates the fields and controls on the Records Only view of a message used for EMC. You can find definitions for the fields and controls later on this page.

Records Only view of a message used for EMC

Defining Service

All service operations must be associated with one or more services. You can create a new service operation for an existing service or create a new service with which to associate your service operation.

See , Managing Services, Adding and Configuring New Service Operations for Services.

Defining Service Operation

You will need to create an asynchronous one-way service that uses the EMC message structure.

Note: The service operation must have the same name as the message.

See , Managing Service Operations, Adding Service Operation Definitions.

You will also need to create an application class that will to process the EMC form, to be used as the handler.

The application class created to process inbound subscriptions needs to extend the EOAW_EMC:API:emailFormManager and EOAW_EMC:utils classes.

When creating this object, you will need to pass it 2 parameters:

  1. Your full instantiated and populated service operation.

  2. The language code of the user(s) that will receive this email.

    Note: EMC engine will handle transaction of things like field labels , however you will need to translate any values contained within your message yourself.

See Understanding EMC Classes.

EMC Runtime-Inbound

EMC inbound processing takes all the values retrieved from the user's submission and merges them with the values sent out to the user (overriding outbound values with inbound values). It then inserts those values into the same service operation used to define your form, and publishes it. You will need add a piece of subscription code to catch the published message and process the data.

Using the utils class method getErrorCodesRS(), you can get a list of error codes inserted by the EMC engine while the inbound message was being processed. The list of codes is as follows:

Error Code

Description

0

No Error.

1

Duplicate Response Received - The user submitted the form more than once.

2

Sent-To Check Failed - The user to whom the email was sent is not the user from whom the response was received. Keep in mind when dealing with this error that some users have more than one email alias.

3

Invalid date value error.

4

Invalid number value error.

The fields in the error codes rowset are ERROR_CODE, ROW_PATH, RECNAME, FIELDNAME, and RECEIVED_VALUE. Not all fields are used for all errors, though. ROW_PATH, RECNAME and FIELDNAME for instance are only used when an invalid date or number value is received.