My Oracle Support Banner

OTM Actual Shipments update Tiggers Unique Constraint Error: ORA-00001 Error Exception Cannot add the S_SHIP_UNIT record. S_SHIP_UNIT_GID must be unique. (Doc ID 1324499.1)

Last updated on SEPTEMBER 08, 2016

Applies to:

Oracle Transportation Management - Version: 6.1.2 to 6.1.6 - Release: 6.1 to 6.1
Information in this document applies to any platform.

Symptoms

When attempting to plan a two-legged order movement via agent two ship units are created and only one is assigned/associated with a shipment, when Actual Shipments are sent in via integration for the first shipment the following error is seen:

--- Error
2011-01-17 19:09:59.135 707601 Error Exception Cannot add the S_SHIP_UNIT record. S_SHIP_UNIT_GID must be unique.
java.sql.BatchUpdateException: ORA-00001: unique constraint (GLOGOWNER.PK_S_SHIP_UNIT) violated


java.sql.BatchUpdateException: ORA-00001: unique constraint (GLOGOWNER.PK_S_SHIP_UNIT) violated

at oracle.jdbc.driver.DatabaseError.throwBatchUpdateException(DatabaseError.java:629)
at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:9447)
at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:211)
at weblogic.jdbc.wrapper.PreparedStatement.executeBatch(PreparedStatement.java:191)
at glog.util.jdbc.SqlUpdate.processBatch(SqlUpdate.java:142)
at glog.util.jdbc.SqlUpdate.resetArguments(SqlUpdate.java:238)
at glog.util.jdbc.SqlUpdate.resetArguments(SqlUpdate.java:161)
at glog.util.jdbc.SqlUpdate.execute(SqlUpdate.java:90)
at glog.util.beandata.BeanDataInserter.insertDBBatch(BeanDataInserter.java:358)
at glog.util.beandata.BeanDataInserter.insertDB(BeanDataInserter.java:302)
at glog.util.beandata.BeanDataInserter.insert(BeanDataInserter.java:197)
at glog.util.beandata.BeanDataInserter.insert(BeanDataInserter.java:232)
at glog.business.util.EntitySaver.insert(EntitySaver.java:252)
at glog.business.util.Persistence.insertupdate(Persistence.java:336)
at glog.business.shipment.PlanningObjectCommitter.commitTSShipUnits(PlanningObjectCommitter.java:579)
at glog.business.planningstructure.PlanningObjectUpdateSessionBean.commitOrderMovementGraph(PlanningObjectUpdateSessionBean.java:109)
at glog.business.planningstructure.PlanningObjectUpdateSessionServerSideEJBWrapper.commitOrderMovementGraph(PlanningObjectUpdateSessionServerSideEJBWrapper.java:38)
at glog.business.planningstructure.PlanningObjectUpdateSessionServerSideEJBWrapper_fexvg1_EOImpl.commitOrderMovementGraph(PlanningObjectUpdateSessionServerSideEJBWrapper_fexvg1_EOImpl.java:134)
at glog.business.shipmentactual.ShipmentActualExecutor.executeShipmentActual(ShipmentActualExecutor.java:973)


-- Expected Behavior
That the the Actual information could be uploaded to the first shipment without error


-- Steps
The issue can be reproduced at will with the following steps.
1. Create an Order Release with a single Ship Unit ID.
2. Create two-leg itinerary.
3. Create two order movements for the above Order Release using above Itinerary:
4. This will create 2 order movement.
5. This will also create two S_SHIP_UNITS

6. Planned Order Movement #1 onto a Shipment: Example: 1234 (Order Movmement #2 remains unplanned)

7. 1. Navigate to Business Process Automation -> Integration -> Integration Manager -> Upload an XML/CSV Transmission
2. Upload XML which is a ShipmentActual that references only the single planned shipment and single S_SHIP_UNIT.

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
  Symptoms
  Cause
  Solution
  References

This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.