Professional Documents
Culture Documents
EBS OTM Integ White Paper
EBS OTM Integ White Paper
Sathya Subramani Brian Donahue Rishi Raina Cathy Hayes Megha Chawla Glen Orlic Adrian Davies Wayne Speranza
Table of Contents
1. 2. OVERVIEW ..................................................................................................................................... 3 PROJECT INFORMATION........................................................................................................... 3
EBS OTM Work Flow Diagrams: ............................................................................... 5 Additional Project Information ....................................................................................... 8 Environment (Dev/Test/Prod) Setup Activities:........................................................... 10 Connectivity:................................................................................................................. 11 Tech Stack Upgrade...................................................................................................... 11 Software Installation ..................................................................................................... 12 Installing patches on EBS ......................................................................................... 12 Enhancement Patches................................................................................................ 13
EBS PATCHES........................................................................................................................................... 13 3. 4. 5. EBS SETUPS .................................................................................................................................. 15 BPEL SETUPS................................................................................................................................ 18 OTM SETUPS ................................................................................................................................ 20
1.
Overview
The purpose of this document is to detail out requirements for the implementation of OTM with EBS using BPEL as middleware for integration. This document can be applied to either an Oracle On Demand or customer hosted implementation. It provides both technical and application functional configurations that need to be considered while implementing this solution. General concept considerations are that EBS should be considered the system of record using OTM for transportation planning purposes. With this, the majority of configuration is on the EBS side catering to the interaction between the two systems. This does not negate that there are some configuration issues that need to be addressed in both BPEL and OTM. The assumption is that this document covers the implementation of this solution in an out of the box mode with no customization. For specific customer requirements some custom work may be required within EBS or some configuration mapping changes may be required within BPEL. Likewise, some custom work flow changes may be required within OTM. Note, the scope of this document will encompass the processing of sales order flows and will not address purchase order flows.
2.
Project Information
Depending on the scope and business requirements of the client there are currently three work flows that can be supported for sales orders. The first involves the normal flow of data thru EBS from sales order entry thru to trip creation (planning in EBS). At Ship Confirm in EBS, trip/shipment actuals can then be transferred to OTM for rating purposes as SAWs (shipments as work). Currently there is no back integration available to bring the calculated freight charges back to EBS. Oracle Reports can be used to report from both databases for the reporting of calculated freight charges. The second workflow utilizes OTMs planning capabilities and will more than likely be the normal workflow implemented. This data flow takes deliveries generated in EBS from sales orders, and sends them to OTM for planning. Either automatically thru OTMs agent functionality or manually by a transportation planner, the planned shipment is communicated back to EBS as a trip. At ship confirm in EBS, trip/shipment actuals are sent back to OTM for final rating. With
this workflow, freight charges can be sent back to EBS as OTM owns the shipment processes. The third workflow enable rate inquiries to OTM from EBS order entry to view available shipping options for an individual customer order.
This figure shows the integration of Oracle Transportation Management with Oracle Order Management, including rate and route flow and estimation:
This figure shows the integration of Oracle Transportation Management with Oracle Payables, including audit/pay/approve and invoice paid:
The diagrams below represents 2 potential EBS-OTM workflows. This first is utilizing OTM as a rating engine for EBS planned trips (shipments). The lower flow demonstrates utilizing OTM planning functionality. Figure A:
EBS Workflow
Freight Loading at Plant - Mode - Carrier - Freight Charges Customer Service : Enters orders - Mode - Carrier - Freight Charge - Scheduled Ship Date - Requested Delivery Date Orders are released as deliveries Facility : Plant Warehouse acitivites within EBS take place such as picking. Ship Confirm Bill of lading and customer billing
Actuals
Trips Shipments
Figure B:
EBS Workflow
Freight Loading at Plant - Mode - Carrier - Freight Charges Customer Service : Enters orders - Mode - Carrier - Freight Charge - Scheduled Ship Date - Requested Delivery Date Orders are released as deliveries Facility : Plant Warehouse acitivites within EBS take place such as picking. Ship Confirm Bill of lading and customer billing
Actuals
Trips
Deliveries
Trips Shipments
Order Release OTM Bulk Planning - Orders passed thru autoplanning using bulk plan
YES
Shipments
YES
NO
OTM Manual Planning - Planner / Plant changes Shipment transportation components or manually plans the shipment.
3.
Product Information Like the locations, product information is populated during the sales order delivery or shipment actual integration if they do not already exist. The ids used for product is the product item id used in EBS. Additional data sent to OTM includes Item Name and Description. These are also stored at the master domain level within OTM, not sub-domains.
An important notation in the design and configuration of the two systems, is that the integration between EBS and OTM is controlled at the EBS ORG (organization) level. As per recent implementations without custom work within EBS or BPEL, all EBS deliveries will be transmitted to OTM for planning. This makes sense since OTM when planning provides EBS with the resulting Trips (shipments). With this, collect or third party orders where the client is not responsible for freight costs, still need to be planned in OTM to created the EBS trip. With this, orders that a client business process might want to flow through will have to be configured into the appropriate OTM agents to prevent the need for transportation planner intervention.
OTM installation BPEL installation BPEL Patches 5580509 5582362 5638122 SR#6166713.992 Deploy BPEL process on BPEL server. Copy files to FTP server Open ports to access BPEL console from network Configure database connection settings in BPEL Network Setup OTM PROD setup/Manual EBS data Sync Rates Upload JDK Upgrade Replace soap.jar and regenerate appsborg2.zip Install OTM base patches on EBS Install OTM enhancement patches on EBS EBS Setup Integration Testing Carrier Sync
Connectivity:
First step in EBS-OTM integration is to establish the connectivity. This is assuming the client architecture spans multiple data centers but concepts can be applied for a single site installation. For example, EBS is in Data Center 1, and BPEL & OTM are in Data Center 2. Connectivitys are set up at server/ ports level between data centers. In order to establish the connectivity a list of EBS servers and OTM servers needs to be identified. While identifying the BPEL and OTM servers identify the ports also. If the implementation is in an Oracle hosted On Demand environment, after identifying the servers and ports create a Service Request, assign the SR to Firewall team. Also make a request to update the BIG-IP/ firewall tool to include any alternate data center BIG-IPs. Provide the port mapping requirements - if there are any for OTM server to BPEL server. For example: DB servers to OTM server DB servers to BPEL server/port Middle tier servers to OTM server Middle tier servers to BPEL server/port BPEL server/port to OTM server Make sure connectivity ( Ex Telnet) testing is done between all the servers.
Software Installation
Installing patches on EBS Refer latest metalink note # 370742.1 - About Oracle Shipping Execution 11.5.10 - Oracle Transportation Management Integration.
If an On Demand installation, create a service request on-demand to do PPA analysis and apply the EBS-OTM integration patch 5086184. Ref SR # 5985243.993 - OHS: ORACLE TRANSPORTATION MANAGEMENT INTEG Refer the known issues section of the document 370742.1 for post patch installation task. As of now WSH_CUST_MERGE becomes invalid after applying the Oracle Shipping Execution Oracle Transportation Management 11.5.10 Integration patch (5086184). To fix this issue, you must apply patch 5592440 after applying the Oracle Shipping Execution - Oracle Transportation Management 11.5.10 Integration patch (5086184). After installing the above patches login to EBS with application developer responsibility to check the whether following concurrent programs are created. 1. Planned Shipment Interface (Note: as per documents the program name is referred wrongly as Shipping - Transportation PlannedShipment Interface) 2. Shipping - Transportation Carrier Synchronization 3. Shipping - Transportation Outbound Interface These programs are not enabled and not available in the Shipping Execution request group. Enable these programs in Concurrent Programs screen and add them to Shipping Execution request group.
Enhancement Patches The following enhancement patches have been released for EBS OTM integration. The table can be used as a check list to insure all appropriate patches are applied.
SL No 1
Patch #
Description EBS Patches Oracle Shipping Execution 11.5.10 Oracle Transportation Management Integration Patch Data Corruption/Pick Release/Change Management Issues after applying the patch 5086184. This patch is recommended for all Customers who have applied 5086184 WSH_CUST_MERGE package is invalid after applying the OTM Integration patch 5086184 or patches that contain the file WSHCMRGB.pls and version 115.14.11510.10. This patch is recommended for all Customers In Sales Order form, when doing Action "Choose Ship Method" (when OTM is ins talled) on a very large order the following error occurs: "Unexpected error has occurred. Oracle error message is ORA06502: PL/SQL: numeric or value error WSHTMCAR: [06.4] SHIPPINGTRANSPORTATION CARRIERS SYNCHRONIZATION ERRORING OUT Allows the ability to have the messages to work without requiring a proxy setup Implemented the logic to derive the ship date and arrival date passed fro m order management during RIQ (Rate Inquiry) calls to OTM (Oracle Transportation Management) Includes the following ECO's: Organization Level OTM Integration Control, Ship Confirm Overrid e, Packing Updates consistent with WMS Org, Support for currency conversion type and Carrier locations are no longer treated as transportation providers. Includes fix that resulted in sales order cancellations leaving behind orp haned delivery details as well as error
Status
5086184
5532582
5592440
5602850
5309217
5516007
5560931
5532582
5605046
10 11 12 13
when backordering a move order Planned Shipment Concurrent program is overriding manually entered delivery we ights Including Custom Hook in RIQ and Item Dimensions in Outbound Sending a delivery to OTM for packing updates in WMS and non-WMS orgs Separate BPEL install needed for each Oracle/OTM environment For OTM Integration: Need the ability to override certain XML attributes for RIQ actions and sending Item Dimensions as LPN Dimensions for Loose Items (Unpacked Items) in Shipping Transportation Outbound Interface program
14
5711010
WMS labels are not getting printed when ship confirming a delivery/trip from a WMS enabled organization when the parameters 'Close trip' and 'Set delivery In-Transit' are passed as no.
BPEL Patches UNABLE TO USE THE "LOCATION" PROPERTY IN BPEL.XML FOR HTTP UNABLE TO USE A CUSTOM PROPERTY IN BPEL.XML FOR DB PARTNER LINK MERGE LABEL REQUEST ON TOP OF 10.1.2.0.2 FOR BUGS 5149866 5595347 5205630
5580509 5582362
5638122
4305639
3.
EBS Setups
Setups in EBS
1. Create an EBS OTM user account and assign Order Mgmt Super User responsibilities. User name can be EBS-OTM. 2. Obtain values for the profiles listed below and set up the profiles at site level 3. EBS OTM Integration Profile Setup
Profile Option OTM: Integration Enabled Used By All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) and Purchasing Integration All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) and Purchasing Integration All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) and Purchasing Integration All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) and Purchasing Integration All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data) Outbound (Sales Order Integration) Example : http://otmmintdev.oracleouts ourcing.com/GC3/glog.integr ation.servlet.WMServlet USA Notes Order Management Only
EBS can only connect with a single OTM domain. You can use the delivered EBS domain in OTM, or create a master domain to suit the implementation domain.ADMIN
CHANGEME
OTM: Corporation Country Code WSH: BPEL Webservice URI for OTM
All outbound (Sales Order Integration, Outbound Deliveries Integration, and Ref Data)
Only for inbound from OTM to WSH integration Only for inbound from OTM to WSH integration
Additional Setups in EBS 1) For all 4 character UOM codes in OTM, setup Attribute15 in UOM DFF in EBS. 1.1) E.g. Cubic feet in OTM is CUFT. To get the mappings right in EBS (as EBS doesnt support 4 character UOM codes), set the ATTRIBUTE15 in UOM DFF for FT3 to CUFT. Additionally map TON (OTM UOM_code) for ST (short Tons in EBS) 1.2) Setup the UOM in the OTM UOM Description Flexfield. 1.3) Setup the UOM under Global UOM Defaults in Shipping's Global Parameters Form
2) Enable Include for planning and Ignore for planning: 2.1) Order Management Super User Responsibility 2.2) Shipping 2.3) Setup 2.4) Grants and Role Definitions 2.5) Define Roles 2.6) Query the Role that is assigned to your user profile 2.7) Verify that on the Delivery tab that the actions "Ignore for Planning" and Include for Planning" are checked. 2.8) If they are not, please check these actions and save the role. 2.9) Log out and log back in and verify that those actions are available to you. 3) Set the OM system parameters : FREIGHT_RATING_ENABLED_FLAG and FTE_SHIP_METHOD_ENABLED_FLAG to Yes. 3.1) Navigate to Setup/System Parameters/Values 3.2) Select show all and set the system parameters : Freight_Rating_Enabled and Fte_Ship_Method_Enabled Flag to Yes. 4) OM: Source for TP Early Ship/Deliver Date = Same Date as Ship / Deliver Deadline Site level
4.
BPEL Setups
Install BPEL and apply patches to the BPEL server: 5638122, 5580509, 5582362. 1. The integration jars are deployed and active. 2. The GLogXML.wsdl file has the following entry (boldfaced): <service name="GLogService"> <port name="HTTPPost" binding="tns:HTTPPost"> <http:address location=*"http://wrohsmint06.oracleoutsourcing.com:8080/GC3/glog.integration.servlet.WMServl et"*/> <!-<http:address location="http://%com.oracle.app.otm.webserver.host%/GC3/glog.integration.servlet.WMServlet"/ > <http:address location="http://%com.oracle.app.otm.webserver.host%/GC3/glog.integration.servlet.LargeTrans missionServlet"/> <http:address location="http://otm-connor-gc3-55wl.us.oracle.com/GC3/glog.integration.servlet.WMServlet"/> <http:address location="http://otm-connor-gc3-55wl.us.oracle.com/GC3/glog.integration.servlet.LargeTransmissionServlet"/> --> </port> </service> 3. The GlogXML.xsd file was installed without any modifications, per the instructions in Metalink note 370742.1. 4. The oc4j-ra.xml file has the following entry: The Oracle_Home for the BPEL service is /home/otm/oracle/product/oas101202. The oc4j-ra.xml file is located at $ORACLE_HOME/j2ee/OC4J_BPEL/application-deployments/default/DbAdapter.
<connector-factory location="eis/DB/OracleConnection" connector-name="Database Adapter"> <config-property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> <config-property name="connectionString" value="*jdbc:oracle:thin:@auohsmint15.oracleoutsourcing.com:10910:sminti1*"/> <config-property name="userName" value="apps"/> <config-property name="password" value="simple4u"/> <config-property name="minConnections" value="5"/>
<config-property name="maxConnections" value="5"/> <config-property name="minReadConnections" value="1"/> <config-property name="maxReadConnections" value="1"/> <config-property name="usesExternalConnectionPooling" value="false"/> <config-property name="dataSourceName" value=""/> <config-property name="usesExternalTransactionController" value="false"/> <config-property name="platformClassName" value="*oracle.toplink.internal.databaseaccess.OraclePlatform*"/> <config-property name="usesNativeSequencing" value="true"/> <config-property name="sequencePreallocationSize" value="50"/> <config-property name="tableQualifier" value=""/> <config-property name="defaultNChar" value="false"/> <config-property name="usesBatchWriting" value="true"/> </connector-factory>
5.
OTM Setups
Map Service levels into OTM a. From EBS extract the service levels defined with the shipping method, and duplicate these service levels in OTM. Service levels will be entities like 2ND DAY AIR, NEXT DAY, etc. In OTM these are the Rate Services used in defining the Rate Offerings. i. These must be setup in the master EBS-OTM domain, not in subdomains of the master. ii. If this is a new installation of both EBS and OTM, then these service levels can be developed for both systems. If the EBS instance is existing, the OTM service will have to map to the existing services used in EBS, which could look different than a traditional OTM rate service setup.
Map Transport Modes into OTM a. From EBS extract the transportation modes defined with the shipping method, and duplicate these modes in OTM. This is done in power data / general, within Transportation Planning and Execution. b. Modes can be entities like LTL, TL, TRUCK, OCEAN, AIR, etc. c. These modes are also used in the configuration of Rate Offerings and Itineraries within OTM. d. Note: These must be setup in the master EBS-OTM domain, not in subdomains of the master. e. Note: if this is a new installation of both EBS and OTM, then these service levels can be developed for both systems. If the EBS instance already exists, the OTM mode will have to map to the existing mode in EBS, which could be different than traditional OTM configurations for transport modes. Business Number Generators o The shipment number generator configuration should be modified to have a prefix of WSH-nnnnnn, where the nnnnnn is the shipment number. For the first work flow whereby SAWs are sent to OTM for rating, the shipments will be generated with this prefix. INCO Terms Mapping o If EBS is configured to populate INCO terms with orders(deliveries) or shipments(trips), then the equivalent INCO terms need to be added to the OTM tables. Allocation Rules o In order for freight costs to be sent to EBS, the shipment must have its costs allocated. The allocation can be done within standard OTM agents. During the design phase allocation rules will need to be defined as per the clients business requirements. Payment Methods Mapping o In OTM, the freight terms used in EBS must be created. These would normally be similar to Prepaid, Collect, Prepaid & Add, but depending on the EBS implementation could be worded differently than in normal transportation terminology. Note, the payment terms an end user sees in the EBS order entry UI, is not the terms sent over to OTM. There is an internal code associated with the UI displayed entities that is the code sent to OTM. An EBS consultant or client super user should be able to extract this codes list for configuration in OTM.
Agent Configuration o As part of the OTM installation, in the EBS domain a series of agents relating specifically to EBS are found. Along with these agents are some saved conditions and queries used in the agents. Refer to the Appendix to this document for more detail on the EBS related OTM agents. o These agents need to be reviewed as to the exact workflow to be installed for the client. As with PUBLIC agents, these should be disabled, copied, and tailored to the clients specific needs. o In addition a number of external statuss may be required on order releases and shipments to control the agent behavior or monitor the agent behavior. o Along with the agents delivered, an additional agent to handle order deletions must be created or copied from the PUBLIC domain. This agent listens for the event ORDER REMOVED: INTEGRATION, and executes the action ORDER RELEASE DELETE. o As with any OTM implementation variations of these agents may be required to meet the individual client business rules. Screen Sets and Managers o Many default OTM screen set display the service provider or location xid. Since this xid is now a more generic entity than might be typically configured in a non-EBS implementation of OTM, time needs to be allocated for the review of any screen utilized by an end user. Some custom work will be required to screen sets and potentially managers to replace the xid with a service provider or location name to provide better information to an end user. Sales or Purchase Order Numbers o In most clients business processes, the EBS sales order number or the clients customers purchase order number is important for searching current shipping status information. These numbers are transferred from EBS to OTM as reference number qualifiers, but at the ship unit item level, which causes an end user to drill down a few steps to view them, and also prevents any searching for information with these numbers. o During the implementation, depending on the structure and nature of the EBS sales order entry and delivery process, consideration may have to be taken by the OTM technical consultant to extract these reference numbers and bubble them up to the order release level, thereby enable an end user to search on them and view them more easily. (Note: a request has been submitted to development to populate this information into a reference number on the order release.) o The important order/delivery structure to consider is whether EBS will send multiple sales orders over to OTM on the same delivery record. This could make the sql to bubble up this information fairly complicated, creating a string of these numbers within the same reference qualifier.
6.
Appendix
Agent Name ORDER RELEASE OMD OMD Agent that can be used for the EBS integration out of the box
Agent Actions If the order has a remark of ACTUALS_RECEIVE D just update the OR. If locations, mode, service provider, or inco term change unassign order Date or Qty change edit shipment Else raise a custom event to trigger the shipment mod agent to send out a shipment update
Custom Events 1) EBS.ORDER CONSTRAINTS MODIFIED event is raised when the locations, mode, service provider or inco term are modified on the order release. 2) EBS.OR ON SHIPMENT MODIFIED to be raised for each shipment the order is on, the shipment mod agent is listening for this event.
2) ALLOCATE ORDER RELEASE WHEN PLANNED a. This agent reacts when the order release is planned onto a shipment b. This agent marks the status of shipments if they cannot be accepted by EBS: i. EBS cannot accept multiple shipments/trips for a single delivery we must mark shipments as INVALID FOR EBS if there are multiple first leg shipments (a later agent will exclude these from being sent to EBS) ii. EBS can also not accept shipments that have multiple equipment so they are marked as INVALID FOR EBS as well. c. OTM allocates the freight cost to the order/order line since EBS needs to have the allocated freight cost within the shipment when it is sent over. ORDER RELEASE AGENTS Agent Events Saved Condition ORDER ON SHIPMENT ASSIGNED:
Agent Actions Set Status if there are parallel first leg shipments or the first leg shipment has multiple equipment
3) SEND FIRST LEG SHIPMENT TO EBS a. This agent listens for the tender of a shipment to be accepted b. If the shipment meets the criteria (isnt doesnt contain a PO and isnt marked as INVALID) c. Next it must record the fact that is was sent by setting the status. SHIPMENT AGENTS Agent Name Agent Events Saved Condition Agent Actions SHIPMENT TENDER SEND FIRST LEG SEND SHIPMENT TO EBS ACCEPT INTEGRATION If the shipment doesnt contain Purchase Orders and isnt INVALID FOR EBS SET STATUS: SENT TO EBS_SENT
4) SHIPMENT MOD RESEND TO EBS a. Reacts when a shipment is modified (the custom event raised in the OMD agent or simply modified by the user) and has been previously SENT TO EBS b. If the Quantity or Cost change as a result of the modification the shipment needs to be re-allocated and sent to EBS again. No status is changed since the status already reflects the fact that it has been SENT TO EBS. SHIPMENT AGENTS Agent Events Saved Condition SHIPMENT ORDER ON SHIPMENT MODIFIED (custom event DESIGNATED AS SENT TO raised by OMD agent) EBS_SENT and SHIPMENT - MODIFIED: SHIP CONFIRM_NOT CONFIRMED
Agent Actions If Qty or Cost change reallocate SEND INTEGRATION Need to create an external system that is to be used to send to BPEL
5) SHIPMENT DELETED SEND TO EBS a. Anytime a shipment is deleted an interface containing the shipment ID only will be sent to EBS. b. If the shipment has already generated a trip in EBS that trip should be deleted, if the trip doesnt exist in EBS this message is to be disregarded. SHIPMENT AGENTS Agent Events Saved Condition SHIPMENT REMOVED (internal or user)
Agent Actions SEND INTEGRATION: ID ONLY Need to create an external system that is to be used to send to BPEL
6) SHIPMENT COMPLETED PERFORM FINANCIALS a. Listens for shipment events received that belong to the group SHIPMENT_COMPLETE, the following status codes are valid: i. CD - Carrier Departed Delivery Location ii. OA - Out-Gate iii. D - Delivered iv. D1 - Completed Unloading at Delivery Location b. If the event entered is associated with the last stop of the shipment the following will take place: i. Set the status of the shipment to ENROUTE_COMPLETE ii. Allocate shipment iii. Generate the Invoice iv. Auto Approve the Invoice SHIPMENT AGENTS Agent Events Saved Condition SHIPMENT STATUS RECEIVED (Event Group = SHIPMENT_COMPLETE)
Agent Actions IF: The event is associated with the last stop
($EVENT_GROUP .IS_LAST_STOP = Y) will perform the following actions: - SET INTERNAL STATUS: ENROUTE_COMP LETED - ALLOCATE SHIPMENT: PLANNING - GENERATE INVOICE - INVOICE - AUTO APPROVE