Implementing Integrations

This chapter discusses implementing integrations.

Click to jump to parent topicSetting Up Inbound Transactions

This section discusses setting up inbound transactions.

Click to jump to top of pageClick to jump to parent topicPages Used to Set Up Inbound Transactions

Page Name

Object Name

Navigation

Usage

Data Collection Setup

BCT_SETUP_FS

SCM Integrations, Setup, Data Collection, Data Collection Setup

Set up electronic data collection defaults.

Click to jump to top of pageClick to jump to parent topicSetting Up Inbound Transaction Defaults

To enter defaults for inbound transactions, use the Bar Code Transaction Setup component.

Access the Data Collection Setup page.

Transaction Number

The last transaction number used in the transaction log appears. The system uses the transaction number to automatically generate a unique number for each transaction added to the transaction log from the transaction pages. System-generated transactions also use this field.

History Options

Determines whether a history of the transactions is saved when you run the Purge process (INPYPURG) on the transactions in the transaction log.

Options are:

History for all Transactions: The system maintains a history of all transactions in the transaction log.

History only for Errors: The system maintains a history only for transactions that have errors or warnings.

No history will be maintained: The system doesn’t maintain a history for any transactions in the transaction log.

Status of Records to Purge

Determines which records the system purges when you run the Purge process.

Options are:

Complete: All rows for the transaction are either canceled or successfully processed.

Confirmed: Purges only rows set to a confirmed status. This entry should be selected only if you have modified the interacting system to set the status of transactions to confirmed after making sure that the PeopleSoft system has processed the transaction to a complete status.

File Suffix

Used as the suffix for the file name of the label extraction file, when a format ID is not specified on the label generation page.

Note. If your interacting system is selecting Complete transactions to mark them as being ready to purge, the BCT_STATUS on BCT_CTL should be updated from 2 (complete) to 6 (confirmed).

See Also

Using Electronic Data Collection Transactions

Purging Transactions

Generating Labels

Click to jump to parent topicSetting Up BackBone InterlinX

This section provides an overview and discusses BackBone InterlinX Framework.

Click to jump to top of pageClick to jump to parent topicUnderstanding BackBone InterlinX

BackBone InterlinX provide a metadata-driven, generic framework for data synchronization of tables between PeopleSoft databases. This framework enables PeopleSoft data synchronization through a single, metadata-driven EIP, thereby leaving standard EIPs to do their intended purpose of providing integration “services”.

The design concepts behind the BackBone InterlinX Framework provide:

BackBone InterlinX provides a simple, metadata-driven, Integration Broker-based solution for data synchronization. In addition, BackBone InterlinX provides data query (“Data Pull”) capabilities using XML that are not offered with ETL tools.

Click to jump to top of pageClick to jump to parent topicPrerequisites

The following objects must be activated and configured correctly within the PeopleSoft Integration Broker for the BackBone InterlinX Framework to work:

Click to jump to top of pageClick to jump to parent topicPages Used to Set Up Backbone InterlinX

Page Name

Object Name

Navigation

Usage

Define Target Set

SAC_BBIX_TARGETSET

SCM Integrations, Backbone InterlinX, Define Target Set

Set up target sets, a logical grouping of target databases for data to be synchronized with the Backbone InterlinX framework. You can enter a list of target databases or Integration Broker Nodes for data to be “pushed” to or “pulled” from in order to define your target sets.

Integration Definition

SAC_BBIX_DEFN

SCM Integrations, Backbone InterlinX, Define Integration

Set up integrations, a record or group of records that you wish to synchronize with other PeopleSoft databases within the BackBone InterlinX Framework. You can select the data options for integrating with your target databases.

BBIX User Exit Processing

SAC_BBIX_USER_EXIT

Click the Integration User Exits link on the Integration Definition page

Set up additional processing to be done before and/or after data is synchronized using the BackBone InterlinX Framework.

Click to jump to top of pageClick to jump to parent topicSetting Up Target Sets

Access the Define Target Sets page.

Target Set

Enter an identifier for your target set.

Node Name

Enter a PeopleSoft Integration Broker Node with which to synchronize data.

Note. Add additional rows for each Node that you wish to integrate with for this target set ID.

See Also

Enterprise PeopleTools 8.46 PeopleBook: Integration Broker

Click to jump to top of pageClick to jump to parent topicDefining Integrations

Access the Integration Definition page.

Integration ID

Enter an ID for your integration.

Active

Click to indicate that the integration is active. If cleared, the integration is inactive. Inactive integrations will not publish data.

Processing

Determines how the integration will be processed. Options include:

Standard Mode: Select to enables theProcessing Options group box so that you can execute the integration either from the BBIX Run Control Component or directly from PeopleCode.

PeopleCode Only Mode: Select to disables the Processing Options group box so that you can only execute the integration using PeopleCode.

Data

Determines the type of data that the integration will synchronize. Options include:

Setup Data: Data is synchronized and committed record by record

Transaction Data: Data is synchronized and committed based on a parent-child transaction model. When this option is selected, the first record in the Processing Options group box is used as the parent record, and all additional records are used as child records.

The system synchronizes data one parent row and all of the corresponding children rows at a time. Each parent row and the children rows is considered a logical transaction.

This option is only available with the processing option of Standard Mode.

Action

Select to determine whether data is sent to or retrieved from the target sets. Options include:

Data Push – Data is sent to the defined target set(s).

Data Pull – Data is retrieved from the defined target set(s).

This option is only available with the processing option of Standard Mode.

Processing Options

Import Option

Select to determine whether date is deleted from tables before synchronization occurs. Options include:

Update and Append Only: Data is not deleted from the source or target database(s). The data sent is updated if the record already exists or added if the record does not exist in the target for a “Data Push” or in the source for a “Data Pull”.

Delete All Record Data: The system deletes date from the source or target database. ALL of the data in the table is deleted in the target for a “Data Push” or in the source for a “Data Pull” before the new data is inserted.

Delete Records using Filter: Data is deleted from the source or target database(s) based on the record “filter” that is defined. The data that matches the “filter” condition in the table is deleted in the target for a “Data Push” or in the source for a “Data Pull” before the new data is inserted.

This option is only available with the processing option of Standard Mode and Setup Data.

Record

Select a table to synchronize.

Note. For transaction data, the key values on the parent record must exist in all child records.

This option is only available with the processing option of Standard Mode.

Fields

Select to determine whether to synchronize all fields on the record or a list of fields. Options include:

All Fields: All fields on the record are synchronized.

List of Fields: Enables a subset of the fields on the record to be synchronized. When selected, you can create rows and search for each field on the selected record. However, the key fields for a record are always synchronized.

Note. If fields are sent in a “Data Push” that do not exist in the target database(s), then these extra fields are ignored. However, if specific fields are selected within a “Data Pull” that do not exist in the target database(s), then data will not be synchronized.

Filter

Create a filter or WHERE clause to subset the data to be synchronized. If not entered, then the entire record is used.

This field is not required.

Target Nodes

Target SetID

Determines the Target Set with which to synchronize the integration. If you don't select at least one Target Set, then the integration will be sent based on the Integration Broker Node Transactions defined for the SAC_BBIX_MESSAGE message.

Map Set ID

Enter the map set ID for which you want to map the integration.

Click to jump to parent topicImplementing XML Mapper

This section provides an overview of XML Mapper and discusses how to set it up.

Click to jump to top of pageClick to jump to parent topicUnderstanding XML Mapper

XML Mapper enables you to map values between your database and an external trading partner database. For example, if you are integrating to a computer hardware vendor, if you use a field called business unit, and the vendor uses a field called BU, you can set up a mapping relationship where your outbound purchase order XML messages automatically convert data in business unit fields to BU fields.

Click to jump to top of pageClick to jump to parent topicPrerequisites to Using XML Mapper

Before you being using XML Mapper, you must:

See Also

Enterprise PeopleTools 8.46 PeopleBook: Integration Broker

Click to jump to top of pageClick to jump to parent topicPages Used to Set Up XML Mapper

Page Name

Object Name

Navigation

Usage

Define Map

SAC_MAP_DEFN

SCM Integrations, XML Mapper, Define Maps

Use to define the type of transformation and to which message, records, and fields it applies.

Map Detail

SAC_MAP_DEFN_DTL

SCM Integrations, XML Mapper, Define Maps, Map Detail

Use to specify the map type detail.

Define Map Sets

SAC_MAPSETDEFN

SCM Integrations, XML Mapper, Define Map Sets

Use to group maps together, order them, and specify in which directions they apply.

Define Node Associations

SAC_NODE_ASSOC

SCM Integrations, XML Mapper, Define Node Associations

Use to associate a source node and a target node with a map set. All maps in an associated map set will then execute using the node association. Before defining a node association, set up an Integration Broker relationship containing transaction modifiers for your nodes and messages.

See Enterprise PeopleTools 8.46 PeopleBook: Integration Broker

Click to jump to top of pageClick to jump to parent topicDefining Maps

Access the Define Maps page.

Map Type

Select to specify a map type for this map. The value you select determines the options available on the Map Detail page. Options include:

Application Class: maps data using an application class that you specify. Selecting this makes the application class ID and application class path fields available on the Map Detail page. Specify an extension of class SCM_SAC_XMLMAPPER:Maps:MapBase, and be certain the specified class implements method TransformXMLString().

Attribute Value: maps the values associated with a specific XML attribute. Selecting this makes the internal value and external value fields available on the Map Detail page.

Field Alias: enables the renaming of fields, such as renaming a field called business unit to BU. Selecting this makes the internal field name and external field name fields available on the Map Detail page.

Field Value: enables the revaluing of fields. For example, externally, a business unit could be called NY Operations, internally, it could be called US007. Selecting this makes the internal value and external value fields available on the Map Detail page.

Field Value — SQL: maps field values using a SQL object. The SQL objects should return two values: internal value and external value, in that order. Selecting this makes the SQL object identifier field available on the Map Detail page.

Record Alias: enables the renaming of records. Selecting this makes the internal record and external record fields available on the Map Detail page.

Values Only: sets up a simple list of mapped values that you can use from code. Selecting this makes the internal value and external value fields available on the Map Detail page.

Note. This map type is never run automatically.

XSL: maps data using XSL that you provide. Selecting this makes the XSL field available on the Map Detail page.

See Defining Map Set Detail.

Map Level

Select All Messages to apply this map to all active messages, or Specific Message to apply this map to one message only.

This option is only available if you select a map type of application class, attribute value, field alias, field value, record alias, or XSL.

Message

Enter the specific message to map to if you selected the specific message mapping level.

Map Match Criteria

Attribute Name

Enter a name for the attribute. The system displays this field only when you have selected an attribute value map type.

Criteria

Enter criteria used to map the data. This is only available if you have selected a field alias, field value, field value — SQL map type. Options include:

None: no criteria will be used to map the data other than that found on the Map Detail page.

Note. This value is for system use only. You must select a value other than None.

Record/Field: to map data by a specified record or field. You can choose All Records, Specific Record, and select a Record, or select a Field.

XPath: select to enter an XPath expression that will specify everything BUT the values you would like to map. Additional XPath text will be appended to your XPath based on the values specified on the Map Details page.

For example, if A and B are specified as Internal and External values, respectively, the XPath expression //RECORD_NAME/FIELDNAME would become //RECORD_NAME/FIELDNAME/text()[.='A'] for an outbound transaction.

If you select this option, enter a Pattern.

Click to jump to top of pageClick to jump to parent topicDefining Map Set Detail

Access the Map Set Detail page.

Application Class Path

Specify an extension of class SCM_SAC_XMLMAPPER:Maps:MapBase. Be certain the specified class implements method TransformXMLString(). The system displays this field only when you have selected an application class map type on the Define Map page.

Application Class ID

Select a valid application class ID that is available at the specified application class path. The system displays this field only when you have selected an application class map type on the Define Map page.

Internal Value

Enter the value you wish to convert to on an inbound message or convert from on an outbound message. The system displays this field only when you have selected an attribute value, field value, or values only map type on the Define Map page.

External Value

Enter the value you wish to convert from on an inbound message or convert to on an outbound message. The system displays this field only when you have selected an attribute value, field value, or values only map type on the Define Map page.

Internal Field Name

Enter the value you wish to convert to an inbound field name or from an outbound field name. The system displays this field only when you have selected a field alias map type on the Define Map page.

External Field Name

Enter the value you wish to convert from an inbound field name or to an outbound field name. The system displays this field only when you have selected a field alias map type on the Define Map page.

SQL Object Identifier

Select a SQL Object Identifier. The system displays this field only when you have selected a field value — SQL map type on the Define Map page.

Internal Record Name

Enter the value you wish to convert to on an inbound record or convert from on an outbound record. The system displays this field only when you have selected a record alias map type on the Define Map page.

External Record Name

Enter the value you wish to convert from an inbound record name or to an outbound record name. The system displays this field only when you have selected a record alias map type on the Define Map page.

XSL

Enter your own custom XSL transformation. The system displays this field only when you have selected a map type of XSL on the Define Map page.

Click to jump to top of pageClick to jump to parent topicDefining Map Sets

Access the Define Map Sets page.

Map Set ID

Create a map set ID to designate each map set.

Active

This option must be selected for the XML mapper to complete data transformations.

Map ID

Select a Map ID to associate with this map set. You can associate multiple map IDs with a single map set.

Direction

Enter the direction for which the selected map should apply. Options include Inbound for inbound messages, Outbound for outbound messages, or Both if you want the map set to be used for inbound and outbound messages.

Arrows

Choose the order in which the maps should be run.

Click to jump to top of pageClick to jump to parent topicDefining Node Associations

Access the Define Node Associations page.

Map Set ID

Enter a map set ID to use with the source node and target node.

Arrows

Choose the order in which the map sets should be run.

Click to jump to parent topicSetting Up Chunking

This section provides an overview of chunking and discusses how to set up chunking.

Click to jump to top of pageClick to jump to parent topicUnderstanding Chunking

If you are publishing application messages, you may want to set up chunking. When chunking, the system automatically breaks up messages into several smaller messages based on the values in one or more of the fields in the level zero record. For example, if you want to chunk by business unit, messages would be broken up by business unit sending each business unit’s transactions to a node that you have defined. Another example would be for sites sending EDI messages directly to trading partners. If you are sending purchase orders directly to a vendor, make sure that the vendor gets only their transactions. Chunking provides the ability to split a batch of purchase orders into separate messages based on the trading partner. The Integration Broker then provides tools to route the message to specific nodes based on that trading partner identification, in this case the vendor ID.

See PeopleSoft Enterprise SCM Electronic Data Interchange Messaging 8.9 PeopleBook.

Note. If you are using a middleware product to transform and route transactions to trading partners then you most likely will not need to use message chunking. All messages would go to the node defined for the middleware product.

Chunking is implemented using the Batch Publish Utility or the Full Data Publish Utility. In either case a batch publish rule is created and a chunking rule can be attached. The chunking rule defines a table containing a set of values that map to specific nodes. For example, in the example where you are chunking by vendor ID, the chunking rule table would contain a set of vendor IDs that map to individual nodes for trading partners receiving the purchase order message.

The following is an step by step explanation of the process flow of a transaction using message chunking:

  1. Chunking Selection

    The run process that generated the message. This may be the Full Data Publish Utility or one of the batch based messages that use the Batch Publish Utility.

    Note. All messages generated from the Publish Outbound Messages use the Batch Publish Utility.

    When the batch publish utility or full data publish utilities run they recognize the chunking rule assigned to the batch publish rule and split the different transactions into separate messages for each chunking rule value. They then publish the message handing it over to the Integration Broker.

  2. Chunking Node Routing

    The Integration Broker makes the decision of which node will receive the Message. Standard processing for the Integration Broker is to send the message to any node that has a transaction setup for that message. When chunking, you want to override the standard method of processing and force the Integration Broker to send the message only to the node for which the message was intended. This is done by assigning OnRouteSend PeopleCode to the message in the Application Designer. When OnRouteSend PeopleCode exists on a message the Integration Broker will only send the message to the nodes that it is told to by this routine. PeopleSoft provides some common functions that can be used for this purpose. The setup instructions for different messages explain exactly how to setup the OnRouteSend PeopleCode for messages where in most cases when using a chunking rule with the batch publish utility or the full data publish utility all you need to do to override the Integration Brokers standard processing is to add the following PeopleCode to the OnRouteSend PeopleCode for the message being sent.

Note. Incremental Publish messages do not use message chunking as defined above. By definition, incremental published messages do not need the Chunking Selection step because they only contain a single transaction. But, if incremental publish messages need to be sent to specific nodes based on values in the message then the Chunking Node Routing step defined above would still be required.

PeopleSoft provides a number of chunking rules, chunking rule tables, data entry pages and OnRouteSend functions that can be used to maintain node mappings and routing rules for some of the more commonly used field values. The data entry pages are noted in the Pages Used to Set up Chunking table below. Information about setup for specific messages is provided in the PeopleBook for the actual application publishing the message. Additional information is provided in the PeopleSoft Enterprise Components PeopleBook explaining how to create your own customized chunking rule, chunking rule table and data entry pages.

For an example of how multiple chunking rules can be setup on a single message look at the batch publish rules for the ADVANCED_SHIPPING_NOTICE Message. These batch publish rules were provided as examples to show the power of message chunking. In this example, the ADVANCED_SHIPPING_NOTICE rule is the standard rule used without chunking. If you want to chunk by Business Unit just attach the Business Unit chunk rule to the batch publish rule. You would also have to populate the Business Unit to node values in the chunk table and set up the OnRouteSend Routing Rule on the Message. In this case, to setup the routing rule you would add the following to the OnRouteSend people code on the ADVANCED_SHIPPING_NOTICE message:

Declare Function GetNodes PeopleCode FUNCLIB_INEIP.PUBLISH_ROUTE_PC FieldForumula; GetNodes (" ");

If you want to chunk by Ship To Customer then activate the ASN_SETID_SHIPTO batch publish rule. In this case you also need to populate the customer chunk rule table and setup the OnRouteSend Routing Rule.

If you want to chunk by Sold To Customer then setup the ASN_SETID_SOLDTO chunk rule, populate the customer chunk rule table and setup the OnRouteSend Routing Rule.

See Also

PeopleSoft Enterprise Components for PeopleSoft Enterprise Financial Management Solutions, Enterprise Service Automation, Asset Lifecycle Management, and Supply Chain Management 8.9 PeopleBook

Click to jump to top of pageClick to jump to parent topicPages Used to Set Up Chunking

Page Name

Object Name

Navigation

Usage

Add Nodes to Chunk Rule

EO_ADNODECHUNK_PNL

Enterprise Components, Integration Definition, Map Chunking Rules, Node to ChunkRule, Add Nodes to Chunk Rule

Map nodes by Chunk Rules.

BusUnit Mapping

EO_CHUNKBU

Enterprise Components, Integration Definition, Map Chunking Rules, Business Units, BusUnit Mapping

Maintain ChunkRule business unit mapping.

Quick Map

EO_ADDBUNODE_PNL

Enterprise Components, Integration Definition, Map Chunking Rules, BU to ChunkRule/Node, Quick Map

Map business units by ChunkRules or nodes.

Map Business Unit

EO_ADDNODEBU_PNL

Enterprise Components, Integration Definition, Map Chunking Rules, ChunkRule/Node to BU, Map Business Unit

Map ChunkRules or nodes by business unit.

SetId Mapping

EO_CHUNKSETID

Enterprise Components, Integration Definition, Map Chunking Rules, Setids, Setid Mapping

Maintain ChunkRule setID mapping.

Quick Map

EO_ADDSIDNODE_PNL

Enterprise Components, Integration Definition, Map Chunking Rules, Setid to ChunkRule/Node, Quick Map

Map setIDs by ChunkRules or nodes.

Map Set IDs

EO_ADDNODESID_PNL

Enterprise Components, Integration Definition, Map Chunking Rules, ChunkRule/Node to Setid, Map Set IDs

Map ChunkRules by setID.

Customer ID Chunk

OM_CHUNKCUSTID

SCM Integrations, Chunking Rule, CustID to Node Mapping, Customer ID Chunk

Map publish application messages by customer.

BU/Location Node Mapping

IN_CHUNKBULOCATION

SCM Integrations, Chunking Rule, BU/Loc to Node Mapping, BU/Location Node Mapping

Map business units and locations.

BU/Par Location Node Mapping

IN_CHUNKBUPARLOC

SCM Integrations, Chunking Rule, BU/Par to Node Mapping, BU/Par Location Node Mapping

Set up chunking by business unit and par location for publish application messages.

Setup Vendor to Node

PO_CHUNK_VENDOR

SCM Integrations, Chunking Rule, Manage ChunkRule VendorID Map, Setup Vendor to Node

Set up chunking by vendor ID for publish application messages.

PO Chunk Shipto

PO_CHUNK_SHIPTO

SCM Integrations, Chunking Rule, Ship to Loc to Node Mapping, PO Chunk Shipto

Set up chunking by ship to location for publish application messages.

Source Code Chunk

OM_CHUNK_SRC_CD

SCM Integrations, Chunking Rule, Source Code to Node Mapping, Source Code Chunk

Set up chunking by source code for publish application messages.

See Also

PeopleSoft Enterprise Components for PeopleSoft Enterprise Financial Management Solutions, Enterprise Service Automation, Asset Lifecycle Management, and Supply Chain Management 8.9 PeopleBook