Compiere 3.1

org.compiere.model
Class MStorage

java.lang.Object
  extended by org.compiere.framework.PO
      extended by org.compiere.model.X_M_Storage
          extended by org.compiere.model.MStorage
All Implemented Interfaces:
Serializable, Cloneable, Comparator<PO>, Evaluatee

public class MStorage
extends X_M_Storage

Inventory Storage Model

Version:
$Id: MStorage.java,v 1.3 2006/07/30 00:51:05 jjanke Exp $
Author:
Jorg Janke
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.compiere.model.X_M_Storage
accessLevel, Model, Table_ID, Table_Name, updatedMS
 
Fields inherited from class org.compiere.framework.PO
ACCESSLEVEL_ALL, ACCESSLEVEL_CLIENT, ACCESSLEVEL_CLIENTORG, ACCESSLEVEL_ORG, ACCESSLEVEL_SYSTEM, ACCESSLEVEL_SYSTEMCLIENT, ENTITYTYPE_Dictionary, ENTITYTYPE_UserMaintained, I_ZERO, log, p_changeVO, p_info, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_ID
 
Constructor Summary
MStorage(Ctx ctx, int ignored, String trxName)
          Persistency Constructor
MStorage(Ctx ctx, ResultSet rs, String trxName)
          Load Constructor
 
Method Summary
static boolean add(Ctx ctx, int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, int reservationAttributeSetInstance_ID, BigDecimal diffQtyOnHand, BigDecimal diffQtyReserved, BigDecimal diffQtyOrdered, BigDecimal diffQtyDedicated, BigDecimal diffQtyExpected, BigDecimal diffQtyAllocated, String trxName)
          Update Storage Info add.
static boolean add(Ctx ctx, int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, int reservationAttributeSetInstance_ID, BigDecimal diffQtyOnHand, BigDecimal diffQtyReserved, BigDecimal diffQtyOrdered, String trxName)
          Update Storage Info add.
protected  boolean beforeSave(boolean newRecord)
          Before Save
 void changeQtyOnHand(BigDecimal qty, boolean add)
          Change Qty OnHand
static MStorage get(Ctx ctx, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Get Storage Info
static MStorage[] getAll(Ctx ctx, int M_Product_ID, int M_Locator_ID, String trxName)
          Get all Storages for Product
static MStorage[] getAllWithASI(Ctx ctx, int M_Product_ID, int M_Locator_ID, boolean FiFo, String trxName)
          Get all Storages for Product with ASI
static MStorage getCreate(Ctx ctx, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Create or Get Storage Info
 MInOutLine getM_InOutLineOf()
           
static int getM_Locator_ID(int M_Warehouse_ID, int M_Product_ID, int M_AttributeSetInstance_ID, BigDecimal Qty, String trxName)
          Get Location with highest Locator Priority and a sufficient OnHand Qty
 int getM_Warehouse_ID()
          Get M_Warehouse_ID of Locator
static MStorage[] getOfProduct(Ctx ctx, int M_Product_ID, String trxName)
          Get Storage Info for Product across warehouses
 BigDecimal getQtyAllocated(int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Get Allocated Qty.
static BigDecimal getQtyAvailable(int M_Warehouse_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Get Available Qty.
 BigDecimal getQtyDedicated(int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Get Dedicated Qty in a given locator.
 BigDecimal getQtyOnHand(int M_Warehouse_ID, int M_Locator_ID, int M_Product_ID, int M_AttributeSetInstance_ID, String trxName)
          Get Onhand Qty in a given locator.
static MStorage[] getWarehouse(Ctx ctx, int M_Warehouse_ID, int M_Product_ID, int M_AttributeSetInstance_ID, int M_AttributeSet_ID, boolean allAttributeInstances, Timestamp minGuaranteeDate, boolean FiFo, String trxName)
          Get Storage Info for Warehouse
 String toString()
          String Representation
 
Methods inherited from class org.compiere.model.X_M_Storage
get_AccessLevel, getDateLastInventory, getKeyNamePair, getM_AttributeSetInstance_ID, getM_Locator_ID, getM_Product_ID, getQtyAllocated, getQtyDedicated, getQtyExpected, getQtyOnHand, getQtyOrdered, getQtyReserved, initPO, setDateLastInventory, setM_AttributeSetInstance_ID, setM_Locator_ID, setM_Product_ID, setQtyAllocated, setQtyDedicated, setQtyExpected, setQtyOnHand, setQtyOrdered, setQtyReserved
 
Methods inherited from class org.compiere.framework.PO
addAttachment, addAttachment, addError, afterDelete, afterSave, beforeDelete, compare, convertToBigDecimal, convertToBoolean, convertToInt, convertToTimestamp, copy, copyValues, copyValues, createAttachment, delete_Accounting, delete, delete, dump, dump, equals, get_ChangeVO, get_ColumnCount, get_ColumnDescription, get_ColumnDisplayType, get_ColumnIndex, get_ColumnLabel, get_ColumnLookup, get_ColumnName, get_DisplayValue, get_EntityType, get_HashMap, get_ID, get_IDOld, get_Info, get_KeyColumns, get_Logger, get_Table_ID, get_Table_ID, get_TableName, get_Translation, get_TrxName, get_Value, get_Value, get_ValueAsInt, get_ValueAsInt, get_ValueAsString, get_ValueDifference, get_ValueDifference, get_ValueOfColumn, get_ValueOld, get_ValueOld, get_ValueOldAsInt, get_ValuesAsString, get_WhereClause, get_xmlDocument, get_xmlString, get_xmlString, getAD_Client_ID, getAD_Org_ID, getAllIDs, getAttachment, getAttachment, getAttachmentData, getCreated, getCreatedBy, getCtx, getFindParameter, getPdfAttachment, getUpdated, getUpdatedBy, getVO, hashCode, insert_Accounting, is_Changed, is_KeyColumn, is_new, is_ValueChanged, is_ValueChanged, isActive, isAttachment, isColumnMandatory, isColumnUpdateable, isMandatoryOK, isPdfAttachment, load, load, load, load, loadComplete, loadDefaults, loadSpecial, lock, save, save, saveNew_getID, saveNewInsertSQL, saveNewSpecial, saveUpdate, set_ChangeVO, set_ColumnUpdateable, set_CustomColumn, set_TrxName, set_Value, set_Value, set_ValueE, set_ValueNoCheck, set_ValueNoCheckE, set_ValueOfColumn, set_ValueString, setAD_Client_ID, setAD_Org_ID, setClientOrg, setClientOrg, setContext, setCtx, setDocWorkflowMgr, setIsActive, setStandardDefaults, setUpdateable, setUpdatedBy, toStringX, unlock, update
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MStorage

public MStorage(Ctx ctx,
                int ignored,
                String trxName)
Persistency Constructor

Parameters:
ctx - context
ignored - ignored
trxName - transaction

MStorage

public MStorage(Ctx ctx,
                ResultSet rs,
                String trxName)
Load Constructor

Parameters:
ctx - context
rs - result set
trxName - transaction
Method Detail

get

public static MStorage get(Ctx ctx,
                           int M_Locator_ID,
                           int M_Product_ID,
                           int M_AttributeSetInstance_ID,
                           String trxName)
Get Storage Info

Parameters:
ctx - context
M_Locator_ID - locator
M_Product_ID - product
M_AttributeSetInstance_ID - instance
trxName - transaction
Returns:
existing or null

getAllWithASI

public static MStorage[] getAllWithASI(Ctx ctx,
                                       int M_Product_ID,
                                       int M_Locator_ID,
                                       boolean FiFo,
                                       String trxName)
Get all Storages for Product with ASI

Parameters:
ctx - context
M_Product_ID - product
M_Locator_ID - locator
FiFo - first in-first-out
trxName - transaction
Returns:
existing or null

getAll

public static MStorage[] getAll(Ctx ctx,
                                int M_Product_ID,
                                int M_Locator_ID,
                                String trxName)
Get all Storages for Product

Parameters:
ctx - context
M_Product_ID - product
M_Locator_ID - locator
trxName - transaction
Returns:
existing or null

getOfProduct

public static MStorage[] getOfProduct(Ctx ctx,
                                      int M_Product_ID,
                                      String trxName)
Get Storage Info for Product across warehouses

Parameters:
ctx - context
M_Product_ID - product
trxName - transaction
Returns:
existing or null

getM_InOutLineOf

public MInOutLine getM_InOutLineOf()

getWarehouse

public static MStorage[] getWarehouse(Ctx ctx,
                                      int M_Warehouse_ID,
                                      int M_Product_ID,
                                      int M_AttributeSetInstance_ID,
                                      int M_AttributeSet_ID,
                                      boolean allAttributeInstances,
                                      Timestamp minGuaranteeDate,
                                      boolean FiFo,
                                      String trxName)
Get Storage Info for Warehouse

Parameters:
ctx - context
M_Warehouse_ID -
M_Product_ID - product
M_AttributeSetInstance_ID - instance
M_AttributeSet_ID - attribute set
allAttributeInstances - if true, all attribute set instances
minGuaranteeDate - optional minimum guarantee date if all attribute instances
FiFo - first in-first-out
trxName - transaction
Returns:
existing - ordered by location priority (desc) and/or guarantee date

getCreate

public static MStorage getCreate(Ctx ctx,
                                 int M_Locator_ID,
                                 int M_Product_ID,
                                 int M_AttributeSetInstance_ID,
                                 String trxName)
Create or Get Storage Info

Parameters:
ctx - context
M_Locator_ID - locator
M_Product_ID - product
M_AttributeSetInstance_ID - instance
trxName - transaction
Returns:
existing/new or null

add

public static boolean add(Ctx ctx,
                          int M_Warehouse_ID,
                          int M_Locator_ID,
                          int M_Product_ID,
                          int M_AttributeSetInstance_ID,
                          int reservationAttributeSetInstance_ID,
                          BigDecimal diffQtyOnHand,
                          BigDecimal diffQtyReserved,
                          BigDecimal diffQtyOrdered,
                          String trxName)
Update Storage Info add. Called from MProjectIssue

Parameters:
ctx - context
M_Warehouse_ID - warehouse
M_Locator_ID - locator
M_Product_ID - product
M_AttributeSetInstance_ID - AS Instance
reservationAttributeSetInstance_ID - reservation AS Instance
diffQtyOnHand - add on hand
diffQtyReserved - add reserved
diffQtyOrdered - add order
trxName - transaction
Returns:
true if updated

add

public static boolean add(Ctx ctx,
                          int M_Warehouse_ID,
                          int M_Locator_ID,
                          int M_Product_ID,
                          int M_AttributeSetInstance_ID,
                          int reservationAttributeSetInstance_ID,
                          BigDecimal diffQtyOnHand,
                          BigDecimal diffQtyReserved,
                          BigDecimal diffQtyOrdered,
                          BigDecimal diffQtyDedicated,
                          BigDecimal diffQtyExpected,
                          BigDecimal diffQtyAllocated,
                          String trxName)
Update Storage Info add. Called from MProjectIssue

Parameters:
ctx - context
M_Warehouse_ID - warehouse
M_Locator_ID - locator
M_Product_ID - product
M_AttributeSetInstance_ID - AS Instance
reservationAttributeSetInstance_ID - reservation AS Instance
diffQtyOnHand - add on hand
diffQtyReserved - add reserved
diffQtyOrdered - add order
trxName - transaction
Returns:
true if updated

getM_Locator_ID

public static int getM_Locator_ID(int M_Warehouse_ID,
                                  int M_Product_ID,
                                  int M_AttributeSetInstance_ID,
                                  BigDecimal Qty,
                                  String trxName)
Get Location with highest Locator Priority and a sufficient OnHand Qty

Parameters:
M_Warehouse_ID - warehouse
M_Product_ID - product
M_AttributeSetInstance_ID - asi
Qty - qty
trxName - transaction
Returns:
id

getQtyAvailable

public static BigDecimal getQtyAvailable(int M_Warehouse_ID,
                                         int M_Product_ID,
                                         int M_AttributeSetInstance_ID,
                                         String trxName)
Get Available Qty. The call is accurate only if there is a storage record and assumes that the product is stocked

Parameters:
M_Warehouse_ID - wh
M_Product_ID - product
M_AttributeSetInstance_ID - masi
trxName - transaction
Returns:
qty available (QtyOnHand-QtyReserved) or null

getQtyOnHand

public BigDecimal getQtyOnHand(int M_Warehouse_ID,
                               int M_Locator_ID,
                               int M_Product_ID,
                               int M_AttributeSetInstance_ID,
                               String trxName)
Get Onhand Qty in a given locator.

Parameters:
M_Warehouse_ID - wh
M_Locator_ID - locator
M_Product_ID - product
M_AttributeSetInstance_ID - masi
trxName - transaction
Returns:
qty onhand(QtyOnHand) or zero

getQtyDedicated

public BigDecimal getQtyDedicated(int M_Warehouse_ID,
                                  int M_Locator_ID,
                                  int M_Product_ID,
                                  int M_AttributeSetInstance_ID,
                                  String trxName)
Get Dedicated Qty in a given locator.

Parameters:
M_Warehouse_ID - wh
M_Product_ID - product
M_AttributeSetInstance_ID - masi
trxName - transaction
Returns:
qty Dedicated (QtyDedicated) or zero

getQtyAllocated

public BigDecimal getQtyAllocated(int M_Warehouse_ID,
                                  int M_Locator_ID,
                                  int M_Product_ID,
                                  int M_AttributeSetInstance_ID,
                                  String trxName)
Get Allocated Qty.

Parameters:
M_Warehouse_ID - wh
M_Product_ID - product
M_AttributeSetInstance_ID - masi
trxName - transaction
Returns:
qty Dedicated (QtyDedicated) or zero

changeQtyOnHand

public void changeQtyOnHand(BigDecimal qty,
                            boolean add)
Change Qty OnHand

Parameters:
qty - quantity
add - add if true

getM_Warehouse_ID

public int getM_Warehouse_ID()
Get M_Warehouse_ID of Locator

Returns:
warehouse

beforeSave

protected boolean beforeSave(boolean newRecord)
Before Save

Overrides:
beforeSave in class PO
Parameters:
newRecord - new
success - success
Returns:
success

toString

public String toString()
String Representation

Overrides:
toString in class X_M_Storage
Returns:
info

Compiere 3.1

Compiere® is a registered trademark of ComPiere, Inc. ©2004-2008 HumanFlash.com All rights reserved.