× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Re: Limitation to lot/location
  • From: MacWheel99@xxxxxxx
  • Date: Fri, 29 Oct 1999 02:08:47 EDT

> Subj:  Limitation to lot/location
>  From:    MAX.Jiang@AlliedSignal.com (Jiang, Max (Suzhou Laminate))
>  
>  Dear all,
>                I'm new in BPCS world. Does anyone can tell me how to add a
>  rule to  inventory transactions:  No any Inventory transaction can make on
>  hand quantity of a  item/lot/location negative.  In BPCS my warehouse is
>  non-manage warehouse and all item have lot control.
>               Very appreciate your comments!
>  
>  Max

>From Al Macintyre

I think this is a BAD idea & try to explain why.  Hope you understand me.

If I understand you correctly, you want to prevent transactions from 
occurring that would drive your on-hand inventory negative.  In our case on 
BPCS 405 CD without lot control we consider this to be a good thing because 
it is a warning that only part of a collection of transactions have been 
posted & the rest need to go in ... we run regular reports listing negative 
inventory & use them as a check list to resolve the missing transactions.

Suppose someone is trying to ship inventory & the labor reporting that 
created that inventory has not yet been keyed in.  In our company, we go 
ahead and ship the merchandise, driving the inventory negative, then the 
labor gets keyed in & all is in balance, or the negative is a warning to help 
us catch what is missing.

What do you want to do in that scenario?

Tell the customer that the shipment will have to be a day late because you 
misplaced the labor transaction reporting, and your business rules prohibit 
inventory transaction float, or do an adjustment to force the inventory to be 
sufficient to cover the shipment, then reverse that adjustment when the labor 
reporting catches up?

You will probably need a special kind of adjustment transaction (separate 
code from regular adjustments) so that you can run reports listing the first 
adjustment to see if the reversal adjustment actually got made ... probably 
more trouble than doing the negatives the way we do them.

We also get negatives a lot in labor reporting, because our process is to 
gather up labor tickets from shop floor & key in a batch through JIT600 in 
which the actual transactions might not go into the system in the same 
sequence as the work was done ... operation 100 is partially done & people 
are moving the WIP to be used in operation 200 & at lunch or break time, the 
operation 200 work force turns in a few hours labor while the operation 100 
work is not reported until end-of-day, or sub-assemblies this way ... the 
labor reporting temporarily drives some components negative, while other 
transactions in the flow should cancel out in the long run.

Or one labor ticket cannot be entered because of some wrong info ... employee 
number is not right or something easily fixed, the data entry person sets 
that ticket aside to get a fix so that these tickets can go in the next 
batch, enters the batch, but the set aside tickets are creating inventory 
that other tickets are consuming, but in your case you don't want the 
inventory going negative until the set aside tickets are fixed, you want to 
stop everything that uses the inventory created by the set aside tickets.  Am 
I understanding you correctly?

What do you want done in that scenario?

Do you want to intercept the transactions in the JIT620 batch & say "we 
cannot accept these transactions because they would drive inventory negative, 
so create a new batch consisting of the transactions that were refused & 
while we are at it, also delay any operation order closure that was in this 
batch, hitting any places where we are blocking input, because we still need 
to enter these transactions when we get the rest of the story.

Other scenarios

You need to inventory all the scenarios that drive the inventory negative ... 
get a list of ILI records with on-hand negative, then INV300 check out 
history F21 to see how they got that way ... then consider the scenarios as I 
have done for your business case ... if you are going to prevent those 
transactions from being entered because they would drive some inventory 
negative, how are you going to handle those transactions that have not been 
entered because you have blocked them?

You could modify the programs ... calculate resulting on-hand for all parts 
involved & if any one of them would go negative, then back out the whole 
calculation, or possibly leave a zero quantity comment in the history ... we 
tried to do a production transaction on sub-assembly-A but since this would 
have driven raw material B & C negative, the whole transaction was blocked & 
you put the comment on A B C D E F G H I J K L M N O P ... each of the items 
whose transaction was blocked ... possibly a reason code would help here with 
the offending item in the comment feild.  This could set off a cascade ... 
for lack of enough material B & C, you cannot add A production, or deduct the 
other components of A, which some other transaction cannot consume, and of 
course the more inaccurate inventory you have the more trouble elsewhere in 
the system such as MRP.

Thus anyone looking at history on A D E F G H I J K L M N O P can see that 
the inventory on this item is not accurate because it is waiting on a fix due 
to some problem with item B C because of the company rule that we do not want 
any transaction to drive any item negative for any reason.

There is also the concept of a TRIGGER program ... basically you set up some 
rules at the FILE level saying that we will not permit ON-HAND to be negative 
... remembering that on-hand is not a field but a calculation from a 
collection of fields.  Then when any program updates the file, there is a 
check to see if that would make the value negative, and if it would, then 
some other program is launched.  At this point the trigger program has a copy 
of the image of the file before / after proposed & can roll back the change 
but it gets more complicated ... the original program is not just updating 
your inventory, it is doing a whole lot of other things that need to be 
rolled back to keep the files in sync.

If BPCS data entry was exclusively individual on-line transactions in which 
the trigger program could block just one transaction & the rest of the data 
entry run fine then it would not be so dangerous, but the reality is that 
BPCS runs a lot of batch stuff & reorgs, in which each program might be 
updating 20 files in sync with each other & you have to second guess all of 
that if you are going to block one transaction.

It might be safer for the trigger program to let the transaction go ahead & 
basically be used as an alert mechanism ... send a message or an audit trail 
... we just had something driven negative ... it was done by program-A 
transaction-type-B user-C on date-D time-E at workstation-F to 
item-warehouse-lot-location-G ... collect a bunch of statistics so that you 
can then mandate a roll-back of those drive negatives that do not cause more 
damage than they are worth.

Hope you find my thoughts constructive

Al Macintyre
+---
| This is the BPCS Users Mailing List!
| To submit a new message, send your mail to BPCS-L@midrange.com.
| To subscribe to this list send email to BPCS-L-SUB@midrange.com.
| To unsubscribe from this list send email to BPCS-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: dasmussen@aol.com
+---


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.