"Cannot delete the SHIPMENT_STOP record" Error When Trying to Delete a Shipment or Shipment Stop (Doc ID 942154.1)

Last updated on JULY 09, 2014

Applies to:

Oracle Transportation Management - Version: 5.5
This problem can occur on any platform.

Symptoms

-- Problem Statement:

A shipment is created using the ActualShipment XML integration that included the following Element:

ActualShipment -> Shipment -> ShipmentStop -> Status

If this shipment or shipment stop is attempted to be deleted or altered vai further integration updates or through the UI, the following Exception is encountered.

2009-09-14 13:18:02.7 540240 Error Exception delete from shipment_stop where shipment_gid = ? and stop_num = ?; [SHIPMENT_GID, STOP_NUMBER]
(GLOGOWNER.FK_SHPSS_SHIPMENT_STOP) 2009-09-14 13:18:02.701 540240 Error Exception Cannot delete the SHIPMENT_STOP record. A SHIPMENT_STOP_STATUS record references it in its [SHIPMENT_GID, STOP_NUM] column. java.sql.SQLException: ORA-02292: integrity constraint violated - child record found


(GLOGOWNER.FK_SHPSS_SHIPMENT_STOP) violated java.sql.SQLException: ORA-02292: integrity constraint - child record found

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:745)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:966)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1262)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3345)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3429)
at
oracle.oc4j.sql.proxy.PreparedStatementBCELProxy.executeUpdate(PreparedStatementBCELProxy.java:37)
at glog.util.jdbc.SqlUpdate.executeUpdate(SqlUpdate.java:133)
at glog.util.jdbc.SqlUpdate.resetArguments(SqlUpdate.java:111)
at glog.util.jdbc.SqlUpdate.execute(SqlUpdate.java:60)
at glog.util.remote.BeanManagedEntityBean.executeUpdate(BeanManagedEntityBean.java:793)
at glog.util.remote.BeanManagedEntityBean$4.execute(BeanManagedEntityBean.java:301)
at glog.util.remote.BeanManagedEntityBean.dbModify(BeanManagedEntityBean.java:1066)
at glog.util.remote.BeanManagedEntityBean.doRemove(BeanManagedEntityBean.java:298)
at glog.util.remote.BaseEntityBean$4.doIt(BaseEntityBean.java:542)
at glog.util.remote.BaseEntityBean.ejb(BaseEntityBean.java:798)
at glog.util.remote.BaseEntityBean.ejbRemove(BaseEntityBean.java:538)
at glog.util.remote.BeanManagedEntityBean.ejbRemove(BeanManagedEntityBean.java:575)
at
com.evermind.server.ejb.interceptor.joinpoint.EntityLifecycle$PreDestroyJoinPointImpl.invoke(EntityLifecycle.java:31)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at
com.evermind.server.ejb.interceptor.system.SetContextActionInterceptor.invoke(SetContextActionInterceptor.java:44)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.LifecycleManager.invokeLifecycleMethod(LifecycleManager.java:262)
at com.evermind.server.ejb.LifecycleManager.invokeLifecycleMethod(LifecycleManager.java:252)
at com.evermind.server.ejb.LifecycleManager.preDestroy(LifecycleManager.java:133)
at ShipmentStop_EntityBeanWrapper1018.__removeCore(ShipmentStop_EntityBeanWrapper1018.java:11703)
at ShipmentStop_EntityBeanWrapper1018.remove(ShipmentStop_EntityBeanWrapper1018.java:11647)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at glog.util.remote.BeanBaseInvoker.invoke(BeanBaseInvoker.java:24)
at glog.util.remote.EntityBeanInvoker.remove(EntityBeanInvoker.java:60)
at glog.util.persistence.CascadeDelete.doRemoval(CascadeDelete.java:173)
at glog.util.persistence.CascadeDelete.persist(CascadeDelete.java:77)
at glog.util.persistence.InsertUpdate.doPersist(InsertUpdate.java:101)
at glog.util.persistence.InsertUpdate.persist(InsertUpdate.java:72)
at glog.util.persistence.PersistenceManager.execute(PersistenceManager.java:121)
at glog.server.compareengine.TopicPublisher.persist(TopicPublisher.java:161)
at glog.server.compareengine.TopicPublisher.publish(TopicPublisher.java:64)
at glog.server.compareengine.CompareEngine.compare(CompareEngine.java:109)
at
glog.util.genericcontainer.GenericContainerUtilSessionBean.compare(GenericContainerUtilSessionBean.java:141)
at
glog.util.genericcontainer.GenericContainerUtilSessionBean.compareAndStore(GenericContainerUtilSessionBean.java:90)
at
glog.util.genericcontainer.GenericContainerUtilSessionServerSideEJBWrapper.compareAndStore(GenericContainerUtilSessionServerSideEJBWrapper.java:168)
at sun.reflect.GeneratedMethodAccessor71.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at
com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at
com.evermind.server.ejb.interceptor.system.SecurityRoleInterceptor.invoke(SecurityRoleInterceptor.java:47)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at
com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at GenericContainerUtilSessionHome_RemoteProxy_385en78.compareAndStore(Unknown Source)
at glog.integration.xmlbasewrapper.XmlBaseWrapper.persist(XmlBaseWrapper.java:213)
at glog.integration.xmlbasewrapper.XmlBaseWrapper.persistViaContainer(XmlBaseWrapper.java:294)
at
glog.integration.application.shipment.ShipmentInterface.persistIndivXML(ShipmentInterface.java:255)
at glog.integration.application.shipment.ShipmentInterface.persistXML(ShipmentInterface.java:194)
at glog.integration.application.BaseInterface.persistXMLBase(BaseInterface.java:185)
at
glog.integration.application.TransactionProcessor.processTransaction(TransactionProcessor.java:210)
at
glog.integration.application.TransactionProcessor.processTransaction(TransactionProcessor.java:349)
at glog.server.workflow.transproc.TransProc.execute(TransProc.java:94)
at glog.server.workflow.SimpleWorkflow.execute(SimpleWorkflow.java:23)
at glog.server.workflow.WorkflowSessionBean.execute(WorkflowSessionBean.java:64)
at sun.reflect.GeneratedMethodAccessor247.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at
com.evermind.server.ejb.interceptor.system.TxNotSupportedInterceptor.invoke(TxNotSupportedInterceptor.java:43)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at
com.evermind.server.ejb.interceptor.system.SecurityRoleInterceptor.invoke(SecurityRoleInterceptor.java:47)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at
com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at
com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at workflow_WorkflowSession_NonTransactional_RemoteProxy_mkgm02.execute(Unknown Source)
at glog.server.workflow.WorkflowManager.execute(WorkflowManager.java:341)
at glog.server.workflow.Trigger.trigger(Trigger.java:123)
at glog.util.event.MemoryEventQueueRunnable.processEvent(MemoryEventQueueRunnable.java:141)
at glog.util.event.MemoryEventQueueRunnable.run(MemoryEventQueueRunnable.java:96)
at glog.util.event.EventThread.run(EventThread.java:82)
at java.lang.Thread.run(Thread.java:534)


-- Steps To Reproduce:
1. Create a Shipment using ActualShipment integration using the XML element:

ActualShipment -> Shipment -> ShipmentStop -> Status

2. Attempt to update or delete the shipment or shipment stop

Cause

Sign In with your My Oracle Support account

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

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms