psdi.app.inventory

Class ReorderMutex

  • java.lang.Object
  • All Implemented Interfaces:
    java.rmi.Remote, ReorderMutexRemote, MboConstants, MboRemote, MaxRemoteProxy


    public class ReorderMutex
    extends Mbo
    implements ReorderMutexRemote
    Mbo object to represent reorder state.

    The key attribute(s) in this object are as follows: Location, Mrnum, Type

    See Inventory Package description.

    The attributes in this object are as follows:

    Attribute NameDescription
    INSERTDATEThe date when reorder is being processed.
    LOCATIONStoreroom Location where the reorder is initiated.
    MRNUMMaterial Request number if reorder is initiated by MR.
    MXSERVERIDThe unique identifer for the mxserver which created this object.
    ORGID Identifier of the organization of the site which performs the reorder.
    REORDERRUNNING Boolean value to indicate if the reorder process of generating PR/PO is in progress.
    SITEID Identifier of the site which performs the reorder.
    STATUSStatus of the specific reorder activity.
    TYPE Internal type of the reorder process .
    USERNAME The MAXIMO user who performs the reorder process represented by this object.


    ReorderMutex is an internal object and is only created by the reorder process. It is deleted when the process is done or when reorder preview is timed out. It provides a locking mechanism to prevent multiple users from reordering for the same storeroom at the same time. It also prevents multiple users from ordering direct order items at the same time. In the meantime, it allows reordering processes on different storerooms being executed simultaniously. It uses attributes location, mrnum and type to maintain object uniqueness. The uniqueness of the combination of these three attributes enables the mutual exclusion rules listed above.
    When the request of reordering for a storeroom, direct order items, or an MR is granted, one ReorderMutex object to represent this request is created and commited into the database to prevent the same request being granted again. When this reorder process is completed or preview is timed out, this object is destroyed to allow future requests enter.
    See Also:
    Reorder
    • Constructor Detail

      • ReorderMutex

        public ReorderMutex(MboSet ms)
                     throws MXException,
                            java.rmi.RemoteException
        Construct the ReorderState object
        Throws:
        MXException
        java.rmi.RemoteException