Package org.compiere.model
Class MCostElement
java.lang.Object
org.compiere.model.PO
org.compiere.model.X_M_CostElement
org.compiere.model.MCostElement
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparator<Object>
,I_M_CostElement
,I_Persistent
,Evaluatee
,ImmutablePOSupport
Cost Element Model
- Version:
- $Id: MCostElement.java,v 1.2 2006/07/30 00:58:04 jjanke Exp $
- Author:
- Jorg Janke, Teo Sarca, www.arhipac.ro
- BF [ 2664529 ] More then one Labor/Burden//Overhead is not allowed
- BF [ 2667470 ] MCostElement.getMaterialCostElement should check only material, red1
- FR: [ 2214883 ] Remove SQL code and Replace for Query -- JUnit tested
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected static ImmutableIntPOCache<Integer,
MCostElement> CacheFields inherited from class org.compiere.model.X_M_CostElement
COSTELEMENTTYPE_AD_Reference_ID, COSTELEMENTTYPE_BurdenMOverhead, COSTELEMENTTYPE_Material, COSTELEMENTTYPE_OutsideProcessing, COSTELEMENTTYPE_Overhead, COSTELEMENTTYPE_Resource, COSTINGMETHOD__, COSTINGMETHOD_AD_Reference_ID, COSTINGMETHOD_AverageInvoice, COSTINGMETHOD_AveragePO, COSTINGMETHOD_Fifo, COSTINGMETHOD_LastInvoice, COSTINGMETHOD_LastPOPrice, COSTINGMETHOD_Lifo, COSTINGMETHOD_StandardCosting, COSTINGMETHOD_UserDefined
Fields inherited from class org.compiere.model.PO
ACCESSLEVEL_ALL, ACCESSLEVEL_CLIENT, ACCESSLEVEL_CLIENTORG, ACCESSLEVEL_ORG, ACCESSLEVEL_SYSTEM, ACCESSLEVEL_SYSTEMCLIENT, ENTITYTYPE_Dictionary, ENTITYTYPE_UserMaintained, I_ZERO, LOCAL_TRX_PREFIX, log, p_ctx, p_info, UUID_NEW_RECORD, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_ID
Fields inherited from interface org.compiere.model.I_M_CostElement
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_CostElementType, COLUMNNAME_CostingMethod, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_Description, COLUMNNAME_IsActive, COLUMNNAME_IsCalculated, COLUMNNAME_M_CostElement_ID, COLUMNNAME_M_CostElement_UU, COLUMNNAME_Name, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, Model, Table_ID, Table_Name
-
Constructor Summary
ConstructorDescriptionMCostElement
(Properties ctx, int M_CostElement_ID, String trxName) Standard ConstructorMCostElement
(Properties ctx, String M_CostElement_UU, String trxName) UUID based ConstructorMCostElement
(Properties ctx, ResultSet rs, String trxName) Load ConstructorMCostElement
(Properties ctx, MCostElement copy) Copy constructorMCostElement
(Properties ctx, MCostElement copy, String trxName) Copy constructorMCostElement
(MCostElement copy) Copy constructor -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
Execute before Delete operations.
Default implementation is nop, to be implemented in sub-classes that needed it.protected boolean
beforeSave
(boolean newRecord) Called before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.static MCostElement
get
(int M_CostElement_ID) Get Cost Element from Cache (immutable)static MCostElement
get
(Properties ctx, int M_CostElement_ID) Get Cost Element from Cache (immutable)static List<MCostElement>
getByCostingMethod
(Properties ctx, String CostingMethod) Get All active Cost Elements for current AD_Client_IDstatic MCostElement
getCopy
(Properties ctx, int M_CostElement_ID, String trxName) Get updateable copy of MCostElement from cachestatic List<MCostElement>
Get active Material Cost Element (associated with costing method) for clientstatic MCostElement[]
getCostingMethods
(PO po) Get active Material Cost Element (associated with costing method) for clientstatic MCostElement[]
getElements
(Properties ctx, String trxName) Get All Cost Elements for current AD_Client_IDstatic MCostElement
getMaterialCostElement
(Properties ctx, String CostingMethod) Get first Material Cost Element for a costing method.static MCostElement
getMaterialCostElement
(Properties ctx, String CostingMethod, int AD_Org_ID) Get first Material Cost Element for a costing methodstatic MCostElement
getMaterialCostElement
(PO po, String CostingMethod) Get Material Cost Element or create itstatic MCostElement[]
Get active non Material Cost Element (i.e costing method is null) for clientboolean
Is Avg Invoice Costing Methodboolean
Is Avg PO Costing Methodboolean
Is this a Costing Methodboolean
isFifo()
Is FiFo Costing Methodboolean
Is Last Invoice Costing Methodboolean
Is Last PO Costing Methodboolean
isLifo()
Is LiFo Costing Methodboolean
Is Std Costing Methodboolean
Is User Costing Methodmark PO as immutabletoString()
String RepresentationMethods inherited from class org.compiere.model.X_M_CostElement
get_AccessLevel, getCostElementType, getCostingMethod, getDescription, getKeyNamePair, getM_CostElement_ID, getM_CostElement_UU, getName, initPO, isCalculated, setCostElementType, setCostingMethod, setDescription, setIsCalculated, setM_CostElement_ID, setM_CostElement_UU, setName
Methods inherited from class org.compiere.model.PO
afterDelete, afterSave, buildInsertSQL, checkImmutable, clearCrossTenantSafe, clone, columnExists, columnExists, compare, copyPO, copyValues, copyValues, createAttachment, delete, delete, delete_Accounting, delete_Tree, deleteEx, deleteEx, dump, dump, equals, get_Attribute, get_Attributes, get_ColumnCount, get_ColumnDescription, get_ColumnDisplayType, get_ColumnIndex, get_ColumnLabel, get_ColumnLookup, get_ColumnName, get_DisplayValue, get_HashMap, get_ID, get_IDOld, get_KeyColumns, get_Logger, get_OptimisticLockingColumns, get_Table_ID, get_TableName, get_Translation, get_Translation, get_Translation, get_Translation, get_Translation, get_TrxName, get_UUID, get_Value, get_Value, get_ValueAsBoolean, get_ValueAsInt, get_ValueAsInt, get_ValueAsString, get_ValueAsString, get_ValueDifference, get_ValueDifference, get_ValueE, get_ValueOfColumn, get_ValueOld, get_ValueOld, get_ValueOldAsInt, get_WhereClause, get_WhereClause, get_xmlDocument, get_xmlString, getAD_Client_ID, getAD_Org_ID, getAllIDs, getAttachment, getAttachment, getAttachmentData, getCreated, getCreatedBy, getCtx, getDoc, getFindParameter, getPdfAttachment, getUpdated, getUpdatedBy, getUUIDColumnName, getUUIDColumnName, hashCode, insert_Accounting, insert_Tree, insert_Tree, is_Changed, is_Immutable, is_new, is_UseOptimisticLocking, is_ValueChanged, is_ValueChanged, isActive, isAttachment, isColumnMandatory, isColumnUpdateable, isMandatoryOK, isPdfAttachment, isReplication, load, load, load, load, loadByUU, loadComplete, loadDefaults, loadPO, loadSpecial, lock, makeImmutable, postDelete, retrieveIdOfParentValue, retrieveIdOfParentValue, save, save, saveCrossTenantSafe, saveCrossTenantSafeEx, saveCrossTenantSafeEx, saveEx, saveEx, saveNew_afterSetID, saveNew_getID, saveNewSpecial, saveReplica, saveUpdate, set_Attribute, set_ColumnUpdateable, set_CustomColumn, set_CustomColumnReturningBoolean, set_OptimisticLockingColumns, set_TrxName, set_TrxName, set_UseOptimisticLocking, set_Value, set_Value, set_Value, set_Value, set_ValueE, set_ValueNoCheck, set_ValueNoCheckE, set_ValueOfColumn, set_ValueOfColumn, set_ValueOfColumnReturningBoolean, set_ValueOfColumnReturningBoolean, setAD_Client_ID, setAD_Org_ID, setClientOrg, setClientOrg, setCrossTenantSafe, setDoc, setDocWorkflowMgr, setIsActive, setProcessedOn, setReplication, setStandardDefaults, setUpdateable, setUpdatedBy, toInsertSQL, unlock, update_Tree, validForeignKeys
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Comparator
reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
Methods inherited from interface org.compiere.model.I_M_CostElement
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActive
Methods inherited from interface org.compiere.model.I_Persistent
save
-
Field Details
-
s_cache
Cache
-
-
Constructor Details
-
MCostElement
UUID based Constructor- Parameters:
ctx
- ContextM_CostElement_UU
- UUID keytrxName
- Transaction
-
MCostElement
Standard Constructor- Parameters:
ctx
- contextM_CostElement_ID
- idtrxName
- trx
-
MCostElement
Load Constructor- Parameters:
ctx
- contextrs
- result settrxName
- trx
-
MCostElement
Copy constructor- Parameters:
copy
-
-
MCostElement
Copy constructor- Parameters:
ctx
-copy
-
-
MCostElement
Copy constructor- Parameters:
ctx
-copy
-trxName
-
-
-
Method Details
-
getMaterialCostElement
Get Material Cost Element or create it- Parameters:
po
- parentCostingMethod
- costing method- Returns:
- cost element
-
getMaterialCostElement
Get first Material Cost Element for a costing method.- Parameters:
ctx
- contextCostingMethod
- costing method- Returns:
- Cost Element or null
-
getMaterialCostElement
public static MCostElement getMaterialCostElement(Properties ctx, String CostingMethod, int AD_Org_ID) Get first Material Cost Element for a costing method- Parameters:
ctx
- contextCostingMethod
- costing method- Returns:
- Cost Element or null
-
getCostElementsWithCostingMethods
Get active Material Cost Element (associated with costing method) for client- Parameters:
po
- parent- Returns:
- cost element list
-
getCostingMethods
Get active Material Cost Element (associated with costing method) for client- Parameters:
po
- parent- Returns:
- cost element array
-
getNonCostingMethods
Get active non Material Cost Element (i.e costing method is null) for client- Parameters:
po
- parent- Returns:
- cost element array
-
get
Get Cost Element from Cache (immutable)- Parameters:
M_CostElement_ID
- id- Returns:
- Cost Element
-
get
Get Cost Element from Cache (immutable)- Parameters:
ctx
- contextM_CostElement_ID
- id- Returns:
- Cost Element
-
getCopy
Get updateable copy of MCostElement from cache- Parameters:
ctx
-M_CostElement_ID
-trxName
-- Returns:
- MCostElement
-
getElements
Get All Cost Elements for current AD_Client_ID- Parameters:
ctx
- contexttrxName
- transaction- Returns:
- array cost elements
-
getByCostingMethod
Get All active Cost Elements for current AD_Client_ID- Parameters:
ctx
- contextCostingMethod
-- Returns:
- cost element list
-
beforeSave
protected boolean beforeSave(boolean newRecord) Description copied from class:PO
Called before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.- Overrides:
beforeSave
in classPO
- Parameters:
newRecord
- true if it is a new record- Returns:
- true if record can be saved
-
beforeDelete
protected boolean beforeDelete()Description copied from class:PO
Execute before Delete operations.
Default implementation is nop, to be implemented in sub-classes that needed it.- Overrides:
beforeDelete
in classPO
- Returns:
- true if record can be deleted
-
isCostingMethod
public boolean isCostingMethod()Is this a Costing Method- Returns:
- true if cost element is of type material and costing method is not null
-
isAverageInvoice
public boolean isAverageInvoice()Is Avg Invoice Costing Method- Returns:
- true if costing method is AverageInvoice
-
isAveragePO
public boolean isAveragePO()Is Avg PO Costing Method- Returns:
- true if costing method is AveragePO
-
isFifo
public boolean isFifo()Is FiFo Costing Method- Returns:
- true if costing method is Fifo
-
isLastInvoice
public boolean isLastInvoice()Is Last Invoice Costing Method- Returns:
- true if costing method is LastInvoice
-
isLastPOPrice
public boolean isLastPOPrice()Is Last PO Costing Method- Returns:
- true if costing method is LastPOPrice
-
isLifo
public boolean isLifo()Is LiFo Costing Method- Returns:
- true if costing method is Lifo
-
isStandardCosting
public boolean isStandardCosting()Is Std Costing Method- Returns:
- true if costing method is StandardCosting
-
isUserDefined
public boolean isUserDefined()Is User Costing Method- Returns:
- true if costing method is User Defined
-
toString
String Representation- Overrides:
toString
in classX_M_CostElement
- Returns:
- info
-
markImmutable
Description copied from interface:ImmutablePOSupport
mark PO as immutable- Specified by:
markImmutable
in interfaceImmutablePOSupport
- Returns:
- PO
-