Showing posts with label OTM Tips. Show all posts
Showing posts with label OTM Tips. Show all posts

Tuesday, July 2, 2013

ExternalDrive Bulkplan Performance Issues in OTM

OTM  Version 6.2.*  has a bug that causes tremendous  increase in Bulkplan Runtime when Rate Offerings use ExternalDrive for Transittimes (Like PCMILER).

There is a patch available in metalink . 

Tuesday, March 5, 2013

Creating a polyline map for mapping shipments out of OTM

 

We had a requirement once to map the shipments out of OTM, but on a different system

Below is how I did it.. It might be of help..

 

otmtips.blogspot.com

 

Retrieve Shipment Stop Related Lat/Lan from OTM

SELECT SS.STOP_NUM,LAT,LON FROM SHIPMENT_STOP SS,
LOCATION LC WHERE SHIPMENT_GID='XXX.1002413'
AND SS.LOCATION_GID=LC.LOCATION_GID ORDER BY SS.STOP_NUM

 

Here’s the Javascript for rendering the Map

 

<script type="text/javascript" src="http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2"></script>

<script type="text/javascript">
var map = null;
function RenderMap()
{
map = new VEMap('MapDiv');
map.SetDashboardSize(VEDashboardSize.Normal);
map.LoadMap(new VELatLong(39.828180,-98.57955),4,'r',false,VEMapMode.Mode2D);
var RouteLayer= new VEShapeLayer();

var shipment1 = new VEShape(VEShapeType.Polyline,
[

new VELatLong(41.8672,-103.6575 ),
new VELatLong(41.8672,-103.6575 ),
new VELatLong(42.8419,-106.2818 )

 
]);
var shipment2 = new VEShape(VEShapeType.Polyline,
[
new VELatLong(33.776864,-84.437599), 
new VELatLong(36.223227,-86.977615) 

]);

shipment1.HideIcon();
shipment1.SetLineColor(new VEColor(0,225,0,1));
shipment1.SetLineWidth(3);

shipment2.HideIcon();
shipment2.SetLineColor(new VEColor(225,0,0,1));
shipment2.SetLineWidth(3);

RouteLayer.AddShape(shipment1);
RouteLayer.AddShape(shipment2);

map.AddShapeLayer(RouteLayer);
}
</script>

Tuesday, June 5, 2012

Planning Shipments with Dynamic Pools in OTM

Here’s how Dynamic Pooling works in OTM.


Scenario

 

A Region serviced by Multiple Pools

image

 

With out Dynamic Pool Option (Default), OTM would select one of Pool A or  Pool B in Selection Order and Try to Build a Shipment From the Pool.

OTM Would not evaluate all the Pool Options .

To handle these scnearios, we can use Dynamic Pool where OTM would evaluate all the matched Pools for a Region

 

To enable Dynamic Pool , set parameters  as below

 

image

Sunday, May 6, 2012

Increasing OTM DB Pool size

 

Login to OTM using DBA.Admin

Search for Primary_JTS in Data sources

image

 

Edit the Pool section of the Source

 

image

 

You can change the Maximum Capacity as required. 

Note ** : Before changing this value, make sure you have enough capacity and processes limits on Oracle DB

Wednesday, May 2, 2012

Tool to update and add Rate Factors

At one of client implementation, users had a large number of updates to rate factors every week and have a large number of rate factor sources

Here’s a a simple way to update rate factors.   Comment in this post if you need a copy of this ..

image

image

Monday, November 7, 2011

Creating custom queues and Reassigning Topic groups for Performance

 

When you have a huge list of tasks running on the default queues, you might have some backlog / performance problems. In the example  below, we have Allocations running on shipments and is backlog on the default AgentPlanning queue. It will cause other tasks triggered on queue in backlog and has to wait..

 

image

 

to eliminate these issues, you can create custom queues and reassign the topic workflows to the custom Queue

Here are the property settings to redirect the topic group to custom Queue

 

image

 

Also remember to set the threads for the new queue

Saturday, October 29, 2011

Sender System Name in OTM Outbound transmissions

 

When OTM sends any outbound communication, it includes the Source System URL. Sometimes this is long and clumsy depending on the installation. (Network and Internal DNS)

In order to change the URL and add a Logical System ID (Like ABC_OTMPROD) , make below changes in glog.properties (custom Section)

 

!remove glog.integration.senderSystemId = $glog.webserver.URL$

glog.integration.senderSystemId=ABC_OTMPROD

 

Before:

image

After

image

Friday, February 11, 2011

Persisting Planning Parameter at shipment Level

 

with new 6.2 Release Oracle added functionality to store parameter used for building shipment at shipment Level. This  helps in using the parameter for various shipment actions with out relying on domain default parameter sets.

You can disable  this if you need to in Domain Settings

image

 

image

Wednesday, November 17, 2010

Showing Stop Activity on Shipment Map Page

To show stop activity on Shipment Map Window ,  make below changes in glog.properties file ( Change in Custom Section)

!remove glog.map.show_stop_activity=false

glog.map.show_stop_activity=true

Friday, October 1, 2010

Configuring Action Checks

If you need to validate some values when performing a user action, you can configure Action checks to do validation

 

for example,  When a User creates a Order Base , we can validate if the base id contains any invalid / unwanted chars

 

select Audit Action as “Add Order Base”

image

 

Create Allow Condition as below

image

 

you can set the cause and solution labels with required error message

image

 

Assign this Action check to user or role as required…

Tuesday, September 21, 2010

OTM External System Communication using Proxy

Some times there are external systems that can be reached by proxy only. Here’s how you can set the Proxy for http communication in glog.properties

 

image

 

You can also set proxy for ftp comunication using below parameters

glog.integration.ftp.proxyHost

glog.integration.ftp.proxyPort

Thursday, July 29, 2010

Reformulating Regions and Cleaning up the Old Sets

 

There are some instances when you need to change region details and move the details between regions . If you do this thru UI , all the internal tables (Formulated Regions) gets adjusted automatically . How ever when you change or move the details via CSV uploads.. you have a bad region formulation.

You need to clean up HNAME_SET_MEMBER table  for the regions impacted. (delete all the records from that table)

Update Region table and set LOADED Flag as N for the regions impacted

and choose Formulate Regions from the UI

image

image

Wednesday, June 16, 2010

Setting up manual trigger for agents | Custom Action on Screen

We can use Actions to trigger an agent manually on selected Object.  Here’s how we can do it

image

Set Action Name as required . Set the Label  (in Public Domain using DBA.ADMIN) with Relevant Name. This is the name you are going to use when setting up the Action Link in Screenset

image

 

Select Required Definition, if you are running Action on shipment Objects and Trying to invoke Agent, select RUN_AGENT_SHIPMENT.  Agent ID Field shows list of Agents which can be invoked.

 

In Your custom screenset,  go to Actions tab and add action

image

Select “Add Actions” and choose the Action you created above..

image

Monday, October 12, 2009

Using DB.XML to retrieve nested table entries in OTM Data Export

You can export data out of OTM using DB.XML method. its cleaner than using CSV and you can also retrieve required child records along with parent.

For example : to retrieve Shipment and associated shipment_stop records , use below query in DB.XML Export option

Query :

select shipment.*,cursor(select * from shipment_stop where shipment_stop.shipment_gid=shipment.shipment_gid) as shipment_stop from shipment where shipment_gid  in (’ABC.1001’,’ABC.1002’)

Root: SHIPMENT

 

image

image