IBM Support

WMS: confirmShipment throws WMS00233:"Inventory does not exist or Inventory Status cannot be uniquely determined" error

Troubleshooting


Problem

WMS: confirmShipment throws WMS00233:"Inventory does not exist or Inventory Status cannot be uniquely determined" error

Symptom

This error can occur when system tries to reduce inventory and cannot find it at the respective location.

Probable scenario:


  • Configure Pack planning for node with ‘SCM Not required for shipment container marking’ and ‘Do not apply SCM’.
  • Configure task type to ‘pick onto equipment’ directly and ‘pack while pick’.


When the pick task is completed by passing the target Pallet ID, an inventory container is created at the target location. This is the shipment sort location.
On confirming the shipment, system tries to remove inventory from the shipment sort location (if the shipment is not packed).
However system does not find the loose inventory in the sort location, and throws the error.

Error Message

WMS00233 : Inventory does not exist or Inventory Status cannot be uniquely determined. [UniqueExceptionId='01010601312512448113702640000000002755']
[UserId : user1, ProgId : Console] com.yantra.yfc.util.YFCException at com.yantra.wms.business.inv.WMSInventoryTarget.getTargetInventoryStatus(WMSInven toryTarget.java:3043) at com.yantra.wms.business.inv.WMSInventoryTarget.validateItemInv(WMSInventoryTarge t.java:2973) at com.yantra.wms.business.inv.WMSInventoryTarget.adjust(WMSInventoryTarget.java:50 9) at com.yantra.wms.business.inv.WMSInventoryUpdateImpl.adjustLocationInventory(WMSIn ventoryUpdateImpl.java:964) at com.yantra.wms.api.WMSApiImpl.adjustLocationInventory(WMSApiImpl.java:148) at sun.reflect.GeneratedMethodAccessor514.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav a:43) at java.lang.reflect.Method.invoke(Method.java:618) at com.yantra.interop.services.api.ApiHelper.invoke(ApiHelper.java:504) at com.yantra.integration.adapter.DefaultIntegrationFlow.invoke(DefaultIntegrationF low.java:142) at com.yantra.interop.services.api.ApiRequestDispatcher.invoke(ApiRequestDispatcher .java:80) at com.yantra.ysc.common.offline.YSCServiceCaller.callService(YSCServiceCaller.java :61) at com.yantra.ysc.common.offline.YSCServiceCaller.callApi(YSCServiceCaller.java:39) at com.yantra.wms.business.extensions.impl.ydm.WMSDeliveryInventoryUpdatesOnConfirm ShipmentLinesEP.inventoryUpdatesOnConfirmShipmentLines(WMSDeliveryInventoryUpdat esOnConfirmShipmentLinesEP.java:34) at com.yantra.wms.business.extensions.impl.ydm.WMSDeliveryInventoryUpdatesOnConfirm ShipmentLinesEP.contribute(WMSDeliveryInventoryUpdatesOnConfirmShipmentLinesEP.j ava:24) at com.yantra.ycp.core.YCPExtensionPointRegistry.invokeExtensions(YCPExtensionPoint Registry.java:63) at com.yantra.ydm.business.YDMChangeShipmentImpl.doInventoryUpdates(YDMChangeShipme ntImpl.java:3169) at com.yantra.ydm.business.YDMChangeShipmentImpl.confirmLines(YDMChangeShipmentImpl .java:3146) at com.yantra.ydm.business.YDMChangeShipmentImpl.doWMSConfirmUpdates(YDMChangeShipm entImpl.java:3127) at com.yantra.ydm.business.YDMChangeShipmentImpl.updateShipment(YDMChangeShipmentIm pl.java:2864) at com.yantra.ydm.business.YDMChangeShipmentImpl.handleChanges(YDMChangeShipmentImp l.java:1840) at com.yantra.ydm.business.YDMChangeShipmentImpl.changeShipment(YDMChangeShipmentIm pl.java:328) at com.yantra.ydm.business.YDMChangeShipmentImpl.confirmShipment(YDMChangeShipmentI mpl.java:271) at com.yantra.ydm.business.YDMConfirmShipment.confirmShipment(YDMConfirmShipment.ja va:43) at com.yantra.ydm.business.YDMConfirmShipment.confirmShipment(YDMConfirmShipment.ja va:38) at com.yantra.ydm.api.YDMApiImpl.confirmShipment(YDMApiImpl.java:1244) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)</p >

Resolving The Problem

1. Break LPN (Pallet / Case) in shipment sort location using "Break LPN" action from the console. This will leave loose inventory for reduction during confirmShipment.
2. Alternatively, if breaking LPN is not feasible, error can be resolved with below changes to task type configuration.

  • Remove the ‘Pack While Pick' option
  • Complete the task without passing the target Pallet ID / Case ID.

Inventory will be deposited in sort location as loose inventory. No error will be thrown during confirming the shipment.

3. If requirement is to move the shipment to "Packed" status:


  • Configure task type to ‘pick into a container’ and ‘pack while pick’.
  • Complete the task by passing target Pallet ID / Case ID.

An outbound container is created in target location and inventory is moved to pack bin.
Shipment moves to "Packed" status.
Confirm shipment will be successful and inventory gets removed from pack bin.

[{"Product":{"code":"SS6PEW","label":"IBM Sterling Order Management"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

NFX6931

Document Information

Modified date:
16 June 2018

UID

swg21553223