Package org.compiere.model
Class MDepreciation
- java.lang.Object
-
- org.compiere.model.PO
-
- org.compiere.model.X_A_Depreciation
-
- org.compiere.model.MDepreciation
-
- All Implemented Interfaces:
Serializable,Cloneable,Comparator<Object>,I_A_Depreciation,I_Persistent,Evaluatee,ImmutablePOSupport
public class MDepreciation extends X_A_Depreciation implements ImmutablePOSupport
Depreciation Engine (eg. SL, ARH_VAR ...)- Author:
- Teo Sarca, SC ARHIPAC SERVICE SRL
- See Also:
- Serialized Form
-
-
Field Summary
-
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, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_ID
-
Fields inherited from interface org.compiere.model.I_A_Depreciation
accessLevel, COLUMNNAME_A_Depreciation_ID, COLUMNNAME_A_Depreciation_UU, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_DepreciationType, COLUMNNAME_Description, COLUMNNAME_IsActive, COLUMNNAME_Name, COLUMNNAME_Processed, COLUMNNAME_Text, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, Model, Table_ID, Table_Name
-
-
Constructor Summary
Constructors Constructor Description MDepreciation(Properties ctx, int A_Depreciation_ID, String trxName)Standard ConstructorMDepreciation(Properties ctx, ResultSet rs, String trxName)Load ConstructorMDepreciation(Properties ctx, MDepreciation copy)MDepreciation(Properties ctx, MDepreciation copy, String trxName)MDepreciation(MDepreciation copy)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanInvoke(MDepreciationWorkfile assetwk, MAssetAcct assetAcct, int A_Current_Period, BigDecimal Accum_Dep)Check if the method can be invoked to give parametersstatic MDepreciationget(int A_Depreciation_ID)Get Depreciation method from cachestatic MDepreciationget(String depreciationType)Get Depreciation methodstatic MDepreciationget(Properties ctx, int A_Depreciation_ID)Get Depreciation method from cachestatic MDepreciationget(Properties ctx, String depreciationType)Get Depreciation method (immutable)intgetFixMonthOffset()protected BigDecimalgetPeriodExp(int A_Current_Period, BigDecimal amtPerYear)Calculate the value of depreciation over a month (period).static intgetPrecision()Returns the precision of calculation of depreciationBigDecimalinvoke(MDepreciationWorkfile assetwk, MAssetAcct assetAcct, int A_Current_Period, BigDecimal Accum_Dep, IDepreciationMethod depreciationMethod)Calculate the value of depreciation over timeMDepreciationmarkImmutable()mark PO as immutablebooleanrequireLastPeriodAdjustment()Needs to be adjusted in last month's amortization-
Methods inherited from class org.compiere.model.X_A_Depreciation
get_AccessLevel, getA_Depreciation_ID, getA_Depreciation_UU, getDepreciationType, getDescription, getName, getText, initPO, isProcessed, setA_Depreciation_ID, setA_Depreciation_UU, setDepreciationType, setDescription, setName, setProcessed, setText, toString
-
Methods inherited from class org.compiere.model.PO
afterDelete, afterSave, beforeDelete, beforeSave, 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_Value, get_Value, get_ValueAsBoolean, get_ValueAsInt, get_ValueAsInt, 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, load, loadByUU, loadComplete, loadDefaults, loadSpecial, lock, makeImmutable, postDelete, retrieveIdOfParentValue, retrieveIdOfParentValue, save, save, 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, 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_A_Depreciation
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
-
-
-
-
Constructor Detail
-
MDepreciation
public MDepreciation(Properties ctx, int A_Depreciation_ID, String trxName)
Standard Constructor
-
MDepreciation
public MDepreciation(Properties ctx, ResultSet rs, String trxName)
Load Constructor- Parameters:
ctx- contextrs- result set record
-
MDepreciation
public MDepreciation(MDepreciation copy)
- Parameters:
copy-
-
MDepreciation
public MDepreciation(Properties ctx, MDepreciation copy)
- Parameters:
ctx-copy-
-
MDepreciation
public MDepreciation(Properties ctx, MDepreciation copy, String trxName)
- Parameters:
ctx-copy-trxName-
-
-
Method Detail
-
get
public static MDepreciation get(int A_Depreciation_ID)
Get Depreciation method from cache- Parameters:
A_Depreciation_ID- depreciation id
-
get
public static MDepreciation get(Properties ctx, int A_Depreciation_ID)
Get Depreciation method from cache- Parameters:
ctx-A_Depreciation_ID- depreciation id
-
get
public static MDepreciation get(String depreciationType)
Get Depreciation method- Parameters:
depreciationType- depreciation type (e.g. SL)
-
get
public static MDepreciation get(Properties ctx, String depreciationType)
Get Depreciation method (immutable)- Parameters:
ctx-depreciationType- depreciation type (e.g. SL)
-
getPrecision
public static int getPrecision()
Returns the precision of calculation of depreciation- Returns:
- accuracy of calculation of depreciation
-
requireLastPeriodAdjustment
public boolean requireLastPeriodAdjustment()
Needs to be adjusted in last month's amortization
-
invoke
public BigDecimal invoke(MDepreciationWorkfile assetwk, MAssetAcct assetAcct, int A_Current_Period, BigDecimal Accum_Dep, IDepreciationMethod depreciationMethod)
Calculate the value of depreciation over time- Parameters:
assetwk- - Fixed Assets worksheetassetAcct- - FA default accounting elementsA_Current_Period- - current periodAccum_Dep- accumulated depreciation until present period- Returns:
- amortized value
-
canInvoke
public boolean canInvoke(MDepreciationWorkfile assetwk, MAssetAcct assetAcct, int A_Current_Period, BigDecimal Accum_Dep)
Check if the method can be invoked to give parameters- Parameters:
assetwk-assetAcct-A_Current_Period- between 0 to UseLifeMonths - 1Accum_Dep-
-
getPeriodExp
protected BigDecimal getPeriodExp(int A_Current_Period, BigDecimal amtPerYear)
Calculate the value of depreciation over a month (period). In the last month of the year we add errors from the adjustment calculation- Parameters:
A_Current_Period- current month's indexamtPerYear- value of depreciation per year- Returns:
- rounded value to the nearest month/decimal getPrecision ()
-
getFixMonthOffset
public int getFixMonthOffset()
-
markImmutable
public MDepreciation markImmutable()
Description copied from interface:ImmutablePOSupportmark PO as immutable- Specified by:
markImmutablein interfaceImmutablePOSupport- Returns:
- PO
-
-