Inventory Transaction Can Result In Negative Inventory Level (Doc ID 498219.1)

Last updated on DECEMBER 02, 2016

Applies to:

Siebel Field Service - Version 7.8.2.3 SIA [19221] and later
z*OBSOLETE: Microsoft Windows Server 2003
Observed Version: 7.8.2.3 [19221] Ind Mfg
Database: Oracle 10.2.0.2
Application Server OS: Microsoft Windows 2003 Server
Database Server OS: Microsoft Windows 2003 Server

This document was previously published as Siebel SR 38-3316483611.

Symptoms

The customer was expecting that Siebel would not allow negative inventory levels in a Non Virtual inventory location.

The observed behaviour was as follows:
(A)    For products that exist in the "Product Inventory" of source location (with inventory level of 0 or more): When an inventory transaction is committed, Siebel validates that the transaction will not result in negative inventory level in the source inventory location.
(B)    If the product is not in the source inventory location (no record for the product in the Product Inventory), the inventory transaction is committed. This creates the record for the Product Inventory in the source inventory location, and creates a negative inventory level.

Oracle/Siebel Technical Support was able to reproduce the behavior the customer observed. Here are the performed steps:

-1- Create two subinventory locations as sublevels of the inventory named MAIN (Warehouse):
1) CAGEBIN01 as Type = Bin and containing the products "Item_001" and "Item_002". Each of these products has set the Min = 5, Max =10, Safety =5 and the Inventory Level is On Hand/Good with Qty =0.
2) TRUNK01 as Type = Trunk and containing the products "Item_003" and "Item_004". Each of these products has set the Min = 5, Max =10, Safety =5 and the Inventory Level is On Hand/Good with Qty =0.

-2- Yet create a subinventory transfer (i.e. inventory transaction) for product "Item_003" (Qty = 1) from CAGEBIN01 to TRUNK01 and commit it.

-3- After the inventory transaction in cause has been committed, the product inventory for CAGEBIN01 contains the product "Item_003" with Inventory Level is On Hand/Good with Qty = -1 (Min, Max and Safety are not set).
And the product inventory for TRUNK01 has the product "Item_003" with Inventory Level is On Hand/Good with Qty = 1.
But "Item_003" never existed in inventory CAGEBIN01. This transaction should have errored out in Siebel saying that "Item_003" does not exist in CAGEBIN01.

 

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