jgehling
(Jeff Gehling)
April 4, 2019, 5:28pm
1
Hello!
Our logistics team is trying to zero out remaining inventory in a previous warehouse via manual inventory adjustments. When they are attempting to zero this sku out we are getting this message, even though the quantity on hand looks ok. 51 -51 = 0. What could be causing this issue? Everything shows 0 in part tracker for this warehouse. Thanks!
cchang
(CChang)
April 4, 2019, 5:43pm
2
Did you try running the part transaction history tracker out to a future date of like 2999 to see if there were any future dated transactions?
jgehling
(Jeff Gehling)
April 4, 2019, 5:46pm
3
I just checked that and we do not have any future dated transactions. We also ran the refresh part quantities and allocations process last night.
Nancy
(Nancy Hoyt)
April 4, 2019, 5:59pm
4
Any chance you have this going on?
and this
jgehling
(Jeff Gehling)
April 4, 2019, 6:07pm
5
Hmm no asterisks that I can see, and I’ll have to dig into the rounding issue. We are on 10.2.300.9
ckrusen
(Calvin Krusen)
April 4, 2019, 6:22pm
6
only the one bin?
And can you do a Qty Adj of 50.999999? (just to see if it is a 10th place rounding thing)
Check it in SQL (Not sure a BAQ will show it) sometimes there are several decimal places out and you can’t see it. I have had that happen in the past. THe part may say 21.00 but in SQL i see 21.00022
jgehling
(Jeff Gehling)
April 4, 2019, 6:28pm
8
@ckrusen @Kimberley this is what is showing in SQL on the PArtWhse table. This is only for one bin yes.
DemandQty
ReservedQty
AllocatedQty
PickingQty
PickedQty
CountedDate
OnHandQty
NonNettableQty
BuyToOrderQty
SalesDemandQty
SalesReservedQty
SalesAllocatedQty
SalesPickingQty
SalesPickedQty
JobDemandQty
JobReservedQty
JobAllocatedQty
JobPickingQty
JobPickedQty
UnfirmJobDemandQty
TFOrdDemandQty
TFOrdReservedQty
TFOrdAllocatedQty
TFOrdPickingQty
TFOrdPickedQty
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
NULL
51.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
jgehling
(Jeff Gehling)
April 4, 2019, 6:30pm
10
Results from the PartBin table:
BinNum
OnhandQty
LotNum
DimCode
AllocatedQty
SalesAllocatedQty
SalesPickingQty
SalesPickedQty
JobAllocatedQty
JobPickingQty
JobPickedQty
TFOrdAllocatedQty
TFOrdPickingQty
TFOrdPickedQty
ShippingQty
PackedQty
000
51.00000000
EA
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00000000
0.00
gpayne
(Greg Payne)
April 4, 2019, 6:37pm
11
If the part is fifo or lot fifo, In part tracker confirm the bin quantity is on the same fifo layer and not split.
ckrusen
(Calvin Krusen)
April 4, 2019, 6:38pm
12
Is that part have any outstanding allocations? Like being included on a packer that is not yet marked SHIPPED, or as a backflushable BOM component on an open job?
ckrusen
(Calvin Krusen)
April 4, 2019, 6:41pm
13
Actually, try doing a Qty Adj of -50. If it lets you, then it might be a rounding thing. If it doesn’t than the “other” thing driving it is obviously a qty of more than 1.
ckrusen
(Calvin Krusen)
April 4, 2019, 6:48pm
14
I enabled tracing and see that there is a Negative inventory Test method being called.
<tracePacket>
<businessObject>Erp.Proxy.BO.InventoryQtyAdjImpl</businessObject>
<methodName>NegativeInventoryTest</methodName>
<appServerUri>net.tcp://usdataps00122/MC-UAT/</appServerUri>
<returnType>System.Void</returnType>
<localTime>4/4/2019 14:44:40:7926334 PM</localTime>
<executionTime>146</executionTime>
<parameters>
<parameter name="pcPartNum" type="System.String"><![CDATA[CB-0005]]></parameter>
<parameter name="pcWhseCode" type="System.String"><![CDATA[mfg]]></parameter>
<parameter name="pcBinNum" type="System.String"><![CDATA[D0302]]></parameter>
<parameter name="pcLotNum" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcPCID" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcDimCode" type="System.String"><![CDATA[FT]]></parameter>
<parameter name="pdDimConvFactor" type="System.Int32"><![CDATA[1]]></parameter>
<parameter name="ipSellingQuantity" type="System.Decimal"><![CDATA[6225.00]]></parameter>
<parameter name="pcNeqQtyAction" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcMessage" type="System.String"><![CDATA[]]></parameter>
</parameters>
</tracePacket>
Maybe check to see what value is being passed via the "ipSellingQuantity"
param
also, the PreSetInventoryQtyAdj
method includes the current QOH and the Adj Qty’s
<tracePacket>
<businessObject>Erp.Proxy.BO.InventoryQtyAdjImpl</businessObject>
<methodName>PreSetInventoryQtyAdj</methodName>
<appServerUri>net.tcp://usdataps00122/MC-UAT/</appServerUri>
<returnType>System.Void</returnType>
<localTime>4/4/2019 14:44:40:9475967 PM</localTime>
<executionTime>128</executionTime>
<parameters>
<parameter name="ds" type="InventoryQtyAdjDataSet">
<InventoryQtyAdjDataSet xmlns="http://www.epicor.com/Ice/300/BO/InventoryQtyAdj/InventoryQtyAdj">
<InventoryQtyAdj>
<Company>MC</Company>
<PartNum>CB-0005</PartNum>
<WareHseCode>mfg</WareHseCode>
<OnHandQty>6225</OnHandQty>
<BinNum>D0302</BinNum>
<AdjustQuantity>-6225.00</AdjustQuantity>
<ReasonCode></ReasonCode>
<LotNum></LotNum>
<Reference>CRK Test</Reference>
<UnitOfMeasure>FT</UnitOfMeasure>
<TransDate>2019-04-04T00:00:00-04:00</TransDate>
<ReasonType>M</ReasonType>
<SerialNoQty>0</SerialNoQty>
<TempSerialNo>0</TempSerialNo>
<ReasonCodeReq>false</ReasonCodeReq>
<AllowNegQty>false</AllowNegQty>
<LegalNumberMessage></LegalNumberMessage>
<StkUOMCode>FT</StkUOMCode>
<EnableSN>false</EnableSN>
<OnHandUOM>FT</OnHandUOM>
<TranDocTypeID></TranDocTypeID>
<PCID></PCID>
<SysRowID>00000000-0000-0000-0000-000000000000</SysRowID>
<PartTrackLots>false</PartTrackLots>
<PartTrackDimension>false</PartTrackDimension>
<PartSalesUM>FT</PartSalesUM>
<PartPricePerCode>E</PartPricePerCode>
<PartSellingFactor>1</PartSellingFactor>
<PartTrackSerialNum>false</PartTrackSerialNum>
<PartIUM>FT</PartIUM>
<PartPartDescription>Cable- KYNAR/HMWPE #8 20 mil Kynar / 90 mil HMWPE</PartPartDescription>
<ReasonCodeDescription></ReasonCodeDescription>
<WareHseDescription>Main, CHALFONT</WareHseDescription>
<WhseBinDescription>ROW D, SECTION 03, LEVEL 02</WhseBinDescription>
<RowMod></RowMod>
</InventoryQtyAdj>
</InventoryQtyAdjDataSet>
</parameter>
<parameter name="requiresUserInput" type="System.Boolean"><![CDATA[False]]></parameter>
</parameters>
<paramDataSetChanges>
<paramDataSet name="ds" useDataSetNbr="0">
<changedValue tableName="InventoryQtyAdj" rowState="Modified" rowNum="0" colName="BinNum"><![CDATA[D0302]]></changedValue>
<changedValue tableName="InventoryQtyAdj" rowState="Modified" rowNum="0" colName="AdjustQuantity"><![CDATA[-6225.00]]></changedValue>
<changedValue tableName="InventoryQtyAdj" rowState="Modified" rowNum="0" colName="Reference"><![CDATA[CRK Test]]></changedValue>
<changedValue tableName="InventoryQtyAdj" rowState="Modified" rowNum="0" colName="WhseBinDescription"><![CDATA[ROW D, SECTION 03, LEVEL 02]]></changedValue>
</paramDataSet>
</paramDataSetChanges>
</tracePacket>
check to see if these match
jgehling
(Jeff Gehling)
April 4, 2019, 6:52pm
15
Let me check and see if we have any open packs for this sku. I also did run that same trace as well, and it stopped after the Negative Inventory test.
<tracePacket>
<businessObject>Erp.Proxy.BO.InventoryQtyAdjImpl</businessObject>
<methodName>NegativeInventoryTest</methodName>
<appServerUri>net.tcp://29743-e102-a1/EpicorERP/</appServerUri>
<returnType>System.Void</returnType>
<localTime>4/4/2019 12:52:32:3934328 PM</localTime>
<threadID>1</threadID>
<executionTime total="21" roundTrip="20" channel="0" bpm="0" other="1" />
<retries>0</retries>
<parameters>
<parameter name="pcPartNum" type="System.String"><![CDATA[BAC363]]></parameter>
<parameter name="pcWhseCode" type="System.String"><![CDATA[GA-3PL]]></parameter>
<parameter name="pcBinNum" type="System.String"><![CDATA[000]]></parameter>
<parameter name="pcLotNum" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcPCID" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcDimCode" type="System.String"><![CDATA[EA]]></parameter>
<parameter name="pdDimConvFactor" type="System.Int32"><![CDATA[1]]></parameter>
<parameter name="ipSellingQuantity" type="System.Decimal"><![CDATA[51]]></parameter>
<parameter name="pcNeqQtyAction" type="System.String"><![CDATA[]]></parameter>
<parameter name="pcMessage" type="System.String"><![CDATA[]]></parameter>
</parameters>
<returnValues>
<returnParameter name="pcNeqQtyAction" type="System.String"><![CDATA[Stop]]></returnParameter>
<returnParameter name="pcMessage" type="System.String"><![CDATA[This transaction will result in a negative onhand quantity for the bin.]]></returnParameter>
</returnValues>
</tracePacket>
Let me try in BL tester
jgehling
(Jeff Gehling)
April 4, 2019, 7:05pm
16
We have no open packs for this sku. I can’t adjust the quantity with 50. We purchase this part/don’t manufacture it so nothing in the job area.
ckrusen
(Calvin Krusen)
April 4, 2019, 7:06pm
17
The fact that the field name in the NegQty Test includes ipSellingQuantity , makes me think it has to do with some outstanding demand.
bmathenge
(Bobbie Mathenge)
April 4, 2019, 7:25pm
18
Do you have any quantities in nonconformance or inspection processing?
bmathenge
(Bobbie Mathenge)
April 4, 2019, 7:27pm
19
Others have mentioned the decimal issue, when under a quantity of 1, I’ve found running a quick BAQ for that part’s on hand can tell you the exact decimal, if it exists. I’ve not been able to see it anywhere else.
for the user who asked…the asterisk means there is a decimal. If you click on it, the number should expand to the full decimal.
jgehling
(Jeff Gehling)
April 4, 2019, 7:29pm
20
We do not have anything in non-conformance or inspection processing.
Epicor support is working on getting us a data fix. They believe the running totals for the part transaction history are outta-whack and need to be re-synchronized.