Adapter for PeopleSoft

The Adapter for PeopleSoft® interacts with the PeopleSoft system, either by requesting data or specifying an operation to be performed.

The Adapter for PeopleSoft uses three business processes to interact with the PeopleSoft system:
  • PeopleSoft Send (PS Send) – Sterling B2B Integrator sends data to PeopleSoft. No response from PeopleSoft is necessary.
  • PeopleSoft Send and Wait (PS Send and Wait) – Sterling B2B Integrator sends a request to PeopleSoft, receives a response from PeopleSoft, and ties the response back to the waiting business process.
  • PeopleSoft Receive (PS Receive) – Sterling B2B Integrator receives asynchronous response messages from PeopleSoft and starts the PS Receive business process. The PS Receive process forwards the response to the PS Send and Wait business process that generated the request.
    Note: This adapter is certified for use with PeopleSoft 8.1 and 8.4. It also works with Perimeter Services.

The following table provides an overview of the Adapter for PeopleSoft:

Category Description
System name None
Graphical Process Modeler (GPM) category None
Description Set of business processes used within Sterling B2B Integrator to facilitate communication with a PeopleSoft system. The Adapter for PeopleSoft uses the HTTP Server adapter, HTTP Client Begin Session service, HTTP Client POST service, HTTP Client End Session service, HTTP Client adapter (used by the HTTP Client services), HTTP Respond service, and some of the Sterling B2B Integrator internal services (for example, RequestResponseXREF and RequestResponseDXREF) to post messages to a PeopleSoft system and to receive asynchronous responses. The responses are matched against pending requests using XREF and DXREF services. The ZlibInflate service and TimeStamp Service for PeopleSoft are part of the Adapter for PeopleSoft. The ZlibInflate service is used to uncompress messages received from PeopleSoft, if necessary. The Timestamp Service for PeopleSoft is used to insert a timestamp in a PeopleSoft-specific format within acknowledgements sent to PeopleSoft for responses received.
Business usage The Adapter for PeopleSoft is a set of business processes, each representing a single operation:
  • The PS_Send business process posts a message to PeopleSoft without expecting any response beyond an immediate acknowledgement.
  • The PS_Send_Wait business process posts a message to PeopleSoft and waits inside a Consume service till it receives a response to its request.
  • The PS Receive business process is initiated by the HTTP Server adapter when a message is received from PeopleSoft. If the message received is a response to a pending request, the PS Receive business process produces a message for consumption by the appropriate PS Send Wait process that created that request. You must create configurations of the HTTP Server adapter, HTTP Respond service, ZlibInflate service, and PeopleSoft Time Stamp for use by the PS Receive business process.
Usage example The PS Send business process can be used to post messages such as a shipping receipt notice to PeopleSoft. No response is expected beyond an immediate acknowledgement that this message was received. The PS Send Wait business process can be used to post requests such as a sales order load. In this case, a response is expected from PeopleSoft, and the business process does not continue till the response is received. The HTTP Server adapter can be configured to initiate the PS Receive business process when an asynchronous message is received from PeopleSoft. Depending on the type of message received, the PS Receive business process may produce a message for a waiting PS Send Wait business process.
Preconfigured? No
Requires third-party files? The Adapter for PeopleSoft adapter requires the installation of PeopleSoft version 8.1, 8.4, or 8.8 using the 8.1 connector.
Note: DTDs and schemas are available from PeopleSoft to meet mapping needs.
Platform availability All supported Sterling B2B Integrator platforms
Related services Related services include:
  • HTTP Server adapter
  • HTTP Respond service
  • HTTP Client Begin Session service
  • HTTP Client POST service
  • HTTP Client End Session service
  • RequestResponseXREF service
  • RequestResponse DXREF service
  • Produce service
  • Consume service
The adapter also requires a Perimeter server.
Application requirements You must create an input XML document that represents (or may be pre-processed into) valid PeopleSoft messages or requests. The document will serve as input to the PS Send and PS Send And Wait business processes.
Initiates business processes? You can initiate a PS Receive business process through an HTTP Server adapter to receive asynchronous response messages from PeopleSoft.
Invocation Not applicable
Business process context considerations None
Returned status values Basic Status: Success or Failure

Advanced Status: None

Restrictions You can use the Adapter for PeopleSoft business processes to perform these operations only:
  • Send
  • Send and Wait
  • Receive an asynchronous message to a Sterling B2B Integrator request
Autonomous asynchronous messages (other than ping) from PeopleSoft are not supported.

Requirements

To configure and use the Adapter for PeopleSoft, you should know how to:
  • Use the Sterling B2B Integrator Map Editor.
  • Create and edit a business process using the Sterling B2B Integrator GPM.

For the Adapter for PeopleSoft to work correctly, you must establish an HTTP connection to PeopleSoft from Sterling B2B Integrator at run time.

How the Adapter for PeopleSoft Works

To understand how the Adapter for PeopleSoft works, you need to understand how the business processes associated with the adapter interact with the PeopleSoft system.

PeopleSoft Send Business Process (PS Send)

You can run the PeopleSoft Send (PS Send) business process manually or from a parent business process. The PS Send business process sends an HTTP post to the PeopleSoft system.

The following components must be in place to connect a business process through HTTP:
  • HTTP Begin Session service, which initiates the connection to PeopleSoft through the Perimeter Server
  • Perimeter Server, which listens for connection requests
  • HTTP Client adapter, which communicates with PeopleSoft
  • HTTP Client POST service, which sends the HTTP POST request
  • HTTP Client End Session service, which closes the session with PeopleSoft

The following figure shows how the PS Send business process works:

How PS Send business process works

As it runs, the PS Send business process performs the following steps:
  1. Determines the type of message being sent
  2. Translates the input message to a PeopleSoft-supported message
  3. Sends an HTTP post to the PeopleSoft system, using the HTTP Client services and adapter.

PeopleSoft Send and Wait Business Process (PS Send and Wait)

The PeopleSoft (PS) Send and Wait business process works the same as the PS Send business process with an additional function: PS Send and Wait waits for an asynchronous notification from another business process.

The following figure shows how the PS Send and Wait business process works:

.How the PS Send and Wait business process works

For information about how the PS Send and Wait business process uses Sterling B2B Integrator services to perform its work, see Implementing the PS Send and Wait Business Process.

PeopleSoft Receive Business Process (PS Receive)

The PeopleSoft Receive (PS Receive) business process uses the HTTP Server adapter and HTTP Respond service to perform its functions. PeopleSoft never communicates directly with the PeopleSoft Receive business process. The HTTP Server adapter receives the communication and passes the information to the business process. Responses to PeopleSoft, if required, are done using the HTTP Respond service.

Note: The HTTP Respond service and HTTP Server adapter are used together to receive messages from a trading partner and to send back a response on the same connection. See HTTP Server Adapter and HTTP Respond Service.
The following components must be in place to connect a business process through HTTP:
  • Perimeter server, which listens for a message
  • HTTP Server adapter, which initiates the business process
  • HTTP Respond service, which sends back a response to PeopleSoft

The following figure shows how the PS Receive process works:

How the PS Receive process works

Upon receiving an HTTP post, the Perimeter server notifies the HTTP Server adapter, which starts the PS Receive business process. After it has started, PS Receive notifies a business process waiting for a response from PeopleSoft.

To complete the notification, PS Receive:
  1. Decodes and inflates the incoming post
  2. Determines which type of message was received
  3. Makes a decision based upon the message type:
    If the Message Is a Then PS Receive
    Simple ping request from PeopleSoft Sends acknowledgment back to the HTTP Respond service so that it can notify PeopleSoft.
    PeopleSoft response to a previous request Publishes a notification to the waiting business process and responds to the HTTP Respond service to acknowledge the correct processing of the PeopleSoft incoming message.
  4. Creates a response and sends it to the HTTP Respond service so that it can update PeopleSoft.

For information about how the PS Receive business process uses Sterling B2B Integrator services to perform its work, see Implementing the PS Receive Business Process.

Implementing the Adapter for PeopleSoft

To implement the Adapter for PeopleSoft, complete the following tasks:
  1. Activate your license for the Adapter for PeopleSoft. See An Overview of Implementing Services.
  2. Implement the following business processes, as needed:
    • PS Send business process. See Implementing the PS Send Business Process.
    • PS Send and Wait business process. See Implementing the PS Send and Wait Business Process.
    • PS Receive business process. See Implementing the PS Receive Business Process.

Implementing the PS Send Business Process

To implement the PS Send business process, you must set up the business process properly to work with the following Sterling B2B Integrator services:
  • Typing service
  • Translation service
  • HTTP Client Begin Session service
  • HTTP Client POST service
  • HTTP End Session service

Typing Service for PS Send

The Typing service enables Sterling B2B Integrator to determine, at run time, which translation to perform on the input document. The service determines the input document type and sets a business process parameter (map_name) indicating which map to use to translate the document.

For the Typing service to work with PS Send, you need to set two parameters in the Typing service BPML:
  • typing_maplist – This is a space-separated list of typing maps that the Typing service uses to determine the document type. In this list, include a typing map for each PeopleSoft-supported transaction.
  • required_parmlist – This is a space-separated list of parameters that the Typing service sets in the business process. map_name is a required parameter in this list.

How the Typing Service Works

The following figure shows how the Typing service works:

How the Typing service works

  1. When the Typing service receives an input document, the Typing service takes the first map in the typing_maplist parameter and attempts to translate the input document using that map.
  2. If the input document matches the left side of the map, the Typing service uses the Translation service classes to perform the translation defined by the map.

    If the input document does not match the left side of the map, the Typing service takes the next map in the typing_maplist parameter and attempts a translation. This process continues until a match is found and a translation occurs.

  3. At translation time the following extended rule executes:
#map_name="fixed_sales_order_load"

This rule sets the map_name element value to fixed_sales_order_load in the output of the translation.

  1. The Typing service searches the output of the document translation for the map_name element, which is specified in the required_parmlist parameter.
  2. The Typing service takes the value of the specified element and sets a business process parameter using the name from the required_parmlist and the value found in the element. For example, param name = map_name, value = fixed_sales_order_load.

Creating a Typing Map for PS Send

To determine the input document type, the Typing service uses a Sterling B2B Integrator typing map.

Before using the PS Send business process, you must create a typing map in the Sterling B2B Integrator Map Editor for each message supported by the business process.

The following procedure assumes that you have a working knowledge of the Sterling B2B Integrator Map Editor.
  1. Verify that:
    1. The DTDs on the right side of the map have element tags corresponding to the business process parameters to be set.
    2. The left side of the map corresponds to the DTD for the input message to be supported.
    3. The right side of the map contains <map_name></map_name>.
  2. Set an On Begin extended rule for the map_name element on the right side. The rule should look like this:

    #map_name="fixed_sales_order_load";

  3. Link a required element on the left side to the map_name on the right side. The left side input element, mapped to the right side output element (map_name), must contain a value. If no value exists, the transaction process will not proceed correctly.

Configuring the Typing Service for PS Send

To configure the Typing service for PS Send:
  1. Create a typing map (left side = input message DTD, right side = map_name DTD).
  2. Check the map in to Sterling B2B Integrator.
  3. Create a Typing Service configuration. See Creating a Service Configuration.
  4. Set the parameters typing_maplist and required_parmlist in the service configuration.

The following code is an example of the Typing service BPML for the PS Send business process:

		<operation name="Typing">
					<participant name="TypingService"/>
			<output message="Xout">
				<assign to="." from="*"/>
				<assign to="typing_maplist">SalesOrderLoadMapName SalesQuoteLoadMapName 
                ShippingNotificationMapName</assign>
				<assign to="required_parmlist">map_name</assign>
				<assign to="validate_input_against_dtd">yes</assign>
			</output>
			<input message="Xin">
				<assign to="." from="*"/>
			</input>
		</operation>

Translation Service for PS Send

The Translation service receives the input document from the Typing service. Using the map indicated by the map_name business process parameter, the Translation service translates an Sterling B2B Integrator-defined document to a PeopleSoft-supported message.

Typically, to use the Translation service, you would include the following rule in the BPML:

<assign to="map_name">myMapName</assign>

Because the Typing service sets the business process parameter for you, an assign rule is not needed.

Creating a Translation Map for PS Send

To translate the input document, the Translation service uses an Sterling B2B Integrator map. Before using the business process, you must create a translation map in the Sterling B2B Integrator Map Editor for each message supported by the business process. This map is created in much the same way as a typing map. For more information, see Creating a Typing Map for PS Send.

Configuring the Translation Service for PS Send

To configure the Translation service for PS Send:
  1. Create a translation map (left side = input message DTD, right side = PS supported msg DTD).
  2. Check the map in to Sterling B2B Integrator.
  3. Create a Translation service configuration. See Creating a Service Configuration. No BPML parameters are required.

The following code is an example of the Translation service BPML for the PS Send business process.

<operation name="translate">
		<participant name="Translation"/>
		<output message="Xout">
				<assign to="." from="*"/>
		</output>
		<input message="Xin">
				<assign to="." from="*"/>
		</input> 
</operation>

HTTP Client Services and Adapter for PS Send

The HTTP Client Begin Session service initiates an HTTP session with PeopleSoft through the HTTP Client adapter. After the session is initiated, the HTTP Client POST service takes the translated document and posts it to a PeopleSoft system through HTTP. The HTTP Client End Session service closes the HTTP session.

Configuring the HTTP Client Services for PS Send

To configure the HTTP Client services for the PS Send business process:

Create configurations of the HTTP Client Begin Session service, HTTP Client POST service, and HTTP End Session service. See Creating a Service Configuration.

The following code is an example of the HTTP Client services BPML for PS Send:

<sequence name="send data">
  <operation name="HTTP Client Begin">
    <participant name="HTTPClientBeginSession"/>
   <output message="HttpClientBeginServiceInputMessage">
     <assign to="." from="PrimaryDocument"/>
     <assign to="RemoteURL">http://remote/url/to/peoplesoft</assign>
     <assign to="HTTPClientAdapter">HTTPClientAdapter</assign>
   </output>
    <input message="inmsg">
     <assign to="." from="*"/>
    </input>
 </operation>
  <operation name="HTTP Client Post">
    <participant name="HTTPClientPost"/>
   <output message="HttpClientPostServiceInputMessage">
     <assign to="." from="PrimaryDocument"/>
     <assign to="SessionToken" from="SessionToken/text()"/>
   </output>
    <input message="inmsg">
     <assign to="." from="*"/>
    </input>
 </operation>
  <operation name="HTTP Client End">
    <participant name="HTTPClientEndSession"/>
   <output message="HttpClientEndServiceInputMessage">
     <assign to="SessionToken" from="SessionToken/text()"/>
   </output>
    <input message="inmsg">
     <assign to="." from="*"/>
    </input>
 </operation>
  <onFault>
   <sequence>
      <operation name="HTTP Client End">
        <participant name="HTTPClientEndSession"/>
       <output message="HttpClientEndServiceInputMessage">
         <assign to="SessionToken" from="SessionToken/text()"/>
       </output>
        <input message="inmsg">
         <assign to="." from="*"/>
       </input>
      </operation>
   </sequence>
  </onFault> 
</sequence>

When it has been configured properly, the PS Send business process can support almost any PeopleSoft-supported XML message.

Implementing the PS Send and Wait Business Process

To implement the PS Send and Wait business process, you must set up the business process properly to work with the following Sterling B2B Integrator services:
  • Typing service
  • Translation service
  • Request Response XREF service
  • HTTP Client Begin Session service
  • HTTP Client POST service
  • HTTP Client End Session service
  • Consume service

Typing Service for PS Send and Wait

In the PS Send and Wait business process, the Typing service selects the correct translation map and the cross-reference (XREF) cookie information to correlate incoming PeopleSoft responses with Sterling B2B Integrator requests. For example, the XREF cookie could be an invoice number or a contract number.

The Typing service extracts the XREF cookie information from the business process input document. The fields used for the XREF cookie are determined during the manual creation of the Typing map.

Follow these XREF cookie requirements:
  • The business process parameter required_parmlist must contain the XREF cookie element.
  • The parameter required_parmlist must exist as an element on the output (right side) of the typing map.
  • The following rules enable the XREF cookie element to provide a value during translation of the typing map:
    Element Map Side (Input/Output) Rule Type Description Example
    map_name Output (right) Extended Indicates a hard-coded map name #map_name = “sales_order_load”;
    NA NA Pre-session Declares a global variable available to all rules string[100] theBusinessUnit;
    theBusinessUnit Input (left) Extended Gives the global variable a value theBusinessUnit = #BUSINESS_UNIT_2;
    XREFCookie Output (right) Extended Sets the XREF cookie element to the global variable #XREFCookie =theBusinessUnit;

Configuring the Typing Service for PS Send and Wait

To configure the Typing service for PS Send and Wait:
  1. Create a typing map (left side = input message DTD, right side = map_name and XREF cookie DTD).
  2. Create a pre-session standard rule declaring a global variable. This variable holds the XREF cookie value.
  3. Create an extended rule on an element on the left side of the map. Use this element to assign a value for the global variable declared in step 2.
  4. Create an extended rule for the XREF cookie element on the right side of the map. Use the global variable to assign a value to the XREF cookie element.
  5. Link the required element on the left to the XREF cookie element on the right.
  6. Create an extended rule on the right side map_name parameter. Assign a hard-coded value to the map_name element.
  7. Link a required element on the left to the map_name element on the right.
  8. Save and compile the maps.
  9. Check the map in to Sterling B2B Integrator.
  10. Create a Typing service configuration. See Creating a Service Configuration.
  11. Set the parameters typing_maplist and required_parmlist in the service configuration.

The following code is an example of Typing service BPML for the PS Send and Wait business process:

<operation name="Typing">
		<participant name="TypingService"/>
		<output message="Xout">
				<assign to="." from="*"/>
				<assign to="typing_maplist">SalesOrderLoad_Map_and_XREFCookie
                SalesQuoteLoad_Map_and_XREFCookie 
                ShippingNotification_Map_and_XREFCookie
    </assign>
				<assign to="required_parmlist">map_name XREFCookie</assign>
				<assign to="validate_input_against_dtd">yes</assign>
		</output>
		<input message="Xin">
				<assign to="." from="*"/>
		</input> 
</operation>

Translation Service for PS Send and Wait

For the PS Send and Wait business process, the Translation service operates in the same manner as it does for the PS Send business process. For more information, see Translation Service for PS Send.

Request Response XREF Service for PS Send and Wait

The Request Response XREF service, along with the Request Response DXREF service, provides the link between the PS Send and Wait and the PS Receive business processes.
  1. The Request Response XREF service persists the PS Send and Wait business process ID, and the XREF cookie selected by the Typing service.
  2. The Request Response DXREF service uses the XREF cookie to look up the business process ID of the corresponding PS Send and Wait business process.
  3. When the PS Receive business process pings the PS Send and Wait business process, the PS Receive business process uses the business process ID.

Configuring the Request Response XREF Service for PS Send and Wait

To configure the Request Response XREF service for PS Send and Wait, create the service configuration.

The following code is an example of the Request Response XREF service BPML for the PS Send and Wait process.

<operation name="Cross Reference">
	<participant name="RequestResponseXREFService"/>
		<output message="Xout">
			<assign to="." from="*"/>
		</output>
		<input message="Xin">
			<assign to="." from="*"/>
		<input> 
</operation>

HTTP Client Services and Adapter for PS Send and Wait

The HTTP Client services and adapter operate in the same manner as they do for the PS Send business process. For more information, see HTTP Client Services and Adapter for PS Send.

Consume Service for PS Send and Wait

The Consume service facilitates communication between the PS Send and Wait and the PS Receive business processes. The link created by the XREF and DXREF services enables this communication. To provide the consuming end of the communication, the Consume service performs the following steps:
  1. The Consume service sends the business process ID to the database. This signifies to the producing business processes that the business process associated with the ID is a candidate for consuming messages.
  2. The Consume service monitors existing messages and searches the database for any messages that correspond to its business process ID.
  3. If there are no existing messages, the Consume service waits for notification to continue from an external business process.
  4. When notified, the Consume service searches for a message in the database, and if found, submit the message into the process data.

Configuring the Consume Service for PS Send and Wait

To configure the Consume service for PS Send and Wait:
  1. Create a Consume service configuration. See Creating a Service Configuration.
  2. Set the input message attribute to the name of the Produce service output message. This name is set in the PS Receive BPML. For more information about the Produce service, see Configuring the Produce Service for PS Receive.
  3. Set a parameter corresponding to the Produce service parameter that holds the PeopleSoft message. This consume parameter enables the message passed to the Consume service to be placed in the process data. Additional business processes or services can also access the message.

The following code is an example of the Consume service BPML for the PS Send and Wait process:

<consume>
	<input message="anOutMsg">
		<assign to="." from="//aDocument"></assign>
	</input> 
</consume>

Implementing the PS Receive Business Process

To implement the PS Receive business process, you must set up the business process properly to work with a Perimeter server and the following Sterling B2B Integrator services:
  • Inflation service
  • Typing service
  • Decision Engine service
  • Request Response DXREF service
  • Translation service
  • Produce service
  • HTTP Server adapter
  • HTTP Respond service
  • Timestamp Service for PeopleSoft

Inflation Service for PS Receive

The incoming message sent by PeopleSoft is compressed and encoded. To process the data on the message, Sterling B2B Integrator must decode and then uncompress (inflate) the data. The Inflation service performs this action. In addition, the Inflation service contains simple typing logic to determine whether the incoming message is a ping message or a business request. The message type is used by the Decision service to handle the message appropriately.

Configuring the Inflation Service for PS Receive

No configuration is required.

The following code is an example of the Inflation service BPML for the PS Receive process:

		<operation name="Inflate incoming PS message">
					<participant name="ExampleZlibInflateService"/>
			<output message="Xout">
				<assign to="." from="*"/>
			</output>
			<input message="Xin">
				<assign to="." from="*"/>
			</input>
		</operation>

Typing Service for PS Receive

The PS Receive business process uses the Typing service to set the XREF cookie.

Setting the XREF Cookie

The Typing service sets the business process parameters for the XREF cookie. For more information, see Typing Service for PS Send and Wait.

Configuring the Typing Service for PS Receive

To configure the Typing service for PS Receive:
  1. Create a typing map (left side = input message DTD, right side = map_name and XREF cookie DTD).
  2. Create a pre-session standard rule declaring a global variable. This variable holds the XREF cookie value.
  3. Create an extended rule on the left side of the map to assign a value to the global variable declared in step 2.
  4. Create an extended rule for the XREF cookie element on the right side of the map. Use the global variable to assign a value to the XREF cookie element.
  5. Link the required element on the left to the XREF cookie element on the right.

The following code is an example of BPML for setting the XREF cookie:

<operation name="Typing">
				<participant name="TypingService"/> 
	<output message="Xout">
					<assign to="." from="*"/>
					<assign to="typing_maplist">SalesOrderAck_XREFCookie</assign>
					<assign to="required_parmlist">XREFCookie</assign>
					<assign to="validate_input_against_dtd">yes</assign>
				</output>
				<input message="Xin">
					<assign to="." from="*"/>
				</input>
			</operation>

If an unsolicited transaction is received by the PS_Receive adapter, the Typing service fails. The BPML unencodes and decompresses the XML document and stores it as the primary document.

To handle unsolicited transactions, add an on-fault in the Respond To Message sequence. The sequence in the on-fault can further process the transaction received. For example, you could print the document out to the file system so that another business process can collect the file and start a different process.

Decision Engine Service for PS Receive

The PS Receive business process receives two types of messages:
  • Simple ping
  • Business response to an Sterling B2B Integrator-initiated request

The Decision Engine service enables the PS Receive business process to react differently to each message type. The service takes the output of the Inflation service and performs actions based on the document type. If the message is a ping, the Decision Engine service directs the process flow to create a response for a ping message.

If the message is a response to a request initiated by Sterling B2B Integrator, the Decision Engine service directs the flow to:
  1. Choose the XREF cookie information.
  2. Publish the notification to the waiting business process.
  3. Insert the PeopleSoft time stamp.
  4. Reply to PeopleSoft.

To use this service, create a rule in the BPML:

<rule name="PingRule">
  <condition>isPing="ping"</condition>
</rule>

Configuring the Decision Engine Service for PS Receive

To configure the Decision Engine service:
  1. Create a BPML rule and set the condition (for example, isPing= “ping”).
  2. Create a Decision Engine service configuration, setting the case reference and the associated activity. See Creating a Service Configuration.
  3. Define the associated activities.

The following code is an example of Decision service BPML for the PS Receive business process:

<choice>
			<select>
					<case ref="PingRule" activity="RespondToPing"/>
					<case ref="PingRule" negative="true" activity="RespondToMessage"/>
			</select>
			
			<sequence name="RespondToPing">
				...				
			</sequence>
			
			<sequence name="RespondToMessage">
			...	
			</sequence>
			
</choice>

Request Response DXREF Service for PS Receive

The Request Response DXREF service, along with the Request Response XREF service, provides the link between the PS Send and Wait and the PS Receive business processes.
  1. The DXREF service checks the database for an entry matching the XREF cookie selected by the Typing service.
  2. If the DXREF service finds a matching record, it retrieves the business process ID belonging to the consuming business process from the entry. The business process ID is set in the process data and passed to the Produce service, where it is used to notify the consuming business process.

Configuring the DXREF Service for PS Receive

To configure the DXREF service, create a service configuration. See Creating a Service Configuration.

The following code is an example of the Request Response DXREF service BPML for the PS Receive business process:

<operation name="De-Cross Reference">
	<participant name="RequestResponseDXREFService"/>
	<output message="Xout">
	<assign to="." from="*"/>
	</output>
	<input message="Xin">
	<assign to="." from="*"/>
	</input> 
</operation>

Translation Service for PS Receive

The Translation service creates two types of responses to incoming messages:

If the Message Is a Then the Business Process Uses the Translation Service to
Simple ping request from PeopleSoft Send an acknowledgment back to the HTTP Server adapter so that it can notify PeopleSoft that the ping was received correctly.
PeopleSoft response to a previous business request Send a business acknowledgment back to the HTTP Server so that it can notify PeopleSoft that the business message was received correctly.

Configuring the PS Receive Translation Service for Ping Reply

The Translation service uses the header information from the incoming PeopleSoft message and creates a PeopleSoft-accepted reply message. For this to happen, create a map that translates an incoming PeopleSoft message to the reply.
  1. On the input side, define the ping message.
  2. On the output side, define the ping reply message.
  3. Map all common attributes and elements from the input side to the output side.

    Common attributes include namespace, interface, and member type.

  4. Hard code the opnum attribute to 1 (#opnum="1";).
  5. Set the return field to "0"(#return="0";).
  6. Check the map in to Sterling B2B Integrator.
  7. Create a PS Receive Translation service configuration. See Creating a Service Configuration. No BPML parameters are required.

Configuring the PS Receive Translation Service for Business Request Reply

To configure the PS Receive Translation service for business request reply:
  1. Create a translation map with the input side defined by the ping message and the output side defined by the ping-reply message.
  2. Map all common attributes and elements from the input side to the output side.

    Common attributes include namespace, interface, and member type. Common elements include publishingnode, channel, and publicationid.

  3. Hard code the opnum attribute to 1 (#opnum="1";).
  4. Set the type attribute to number (#type="number";)
  5. Set the return field to "0"(#return="0";).
  6. Check the map in to Sterling B2B Integrator.
  7. Create the PS Receive Translation service configuration. See Creating a Service Configuration. No BPML parameters are required.

Produce Service for PS Receive

The Consume and Produce services facilitate communication between the PS Send and Wait and PS Receive business processes. The link created by the Request Response XREF and Request Response DXREF services enables this communication. The Produce service persists the PeopleSoft message in the database. The Produce service notifies the consuming business process associated with the business process ID received from the DXREF service. The notified business process retrieves the message from the database and continues.

Configuring the Produce Service for PS Receive

To configure the Produce service for PS Receive:
  1. Create a Produce service configuration. See Creating a Service Configuration.
  2. Set the INVOKE_ID_LIST parameter, using the following convention:

    "consuming business process name"/"text()"

    The DXREF service sets the consuming business process ID in the process data using the consuming business process name. This parameter extracts the ID from the process data.

  3. Set the output message attribute to the name of the Consume service input message.
  4. Set a parameter to send the PeopleSoft message to the consuming business process. The consuming business process accesses this parameter to get the message. Assign this parameter from //PrimaryDocument.

The following code is an example of Produce service BPML for the PS Receive business process:

<produce>
	<participant name="ConsumeWF"/>
	<output message="anOutMsg">
		<assign to="INVOKE_ID_LIST" from ="//PSSend_Wait/text()"/>
		<assign to="aDocument" from="//PrimaryDocument" append="true"/>
	</output> 
</produce>

HTTP Respond Service for PS Receive

Use the HTTP Respond service to send a response to the Perimeter server, which responds to PeopleSoft. The HTTP Respond service notifies the Perimeter server that the response from PeopleSoft has been processed and that it can send an acknowledgment to PeopleSoft.

Configuring the HTTP Respond Service for PS Receive

To configure the HTTP Respond service for the PS Receive process, include the service configuration provided with Sterling B2B Integrator in your business process, and set the doc-has-headers parameter to False.

The following code is an example of HTTP Respond service BPML for the PS Receive business process:

<operation name="HttpResponse">
    <participant name="HttpRespond"/>
    <output message="Xout">
         <assign to="doc-has-headers">false</assign>
         <assign to=".">from="*"/>
    </output>
    <input message="Xin">
         <assign to="." from="*"/>
    </input> 
</operation>

Timestamp Service for PeopleSoft for PS Receive

The Timestamp Service for PeopleSoft provides two modifications for the reply to PeopleSoft. The service inserts:
  1. An ISO-8061 formatted time stamp into the <publishtimestamp> element of the reply.
  2. An XML processing instruction at the beginning of the reply document.

Configuring the Timestamp Service for PeopleSoft

To configure the Timestamp Service for PeopleSoft, create the service configuration. See Creating a Service Configuration. No BPML parameters are required.

The following code is an example of PS Time Stamp service BPML for the PS Receive business process:

<operation name="Insert ISO-8061 formatted TimeStamp for PeopleSoft">
	<participant name="ExamplePeopleSoftTimeStampService"/>
	<output message="Xout">
	<assign to="." from="*"/>
	</output>
	<input message="Xin">
	<assign to="." from="*"/>
	</input> 
</operation>