Package org.compiere.model
Class MMovement
java.lang.Object
org.compiere.model.PO
org.compiere.model.X_M_Movement
org.compiere.model.MMovement
- All Implemented Interfaces:
Serializable,Cloneable,Comparator<Object>,I_M_Movement,I_Persistent,DocAction,Evaluatee
Inventory Movement Model
- Version:
- $Id: MMovement.java,v 1.3 2006/07/30 00:51:03 jjanke Exp $
- Author:
- Jorg Janke, victor.perez@e-evolution.com, e-Evolution http://www.e-evolution.com
- FR [ 1948157 ] Is necessary the reference for document reverse, Armen Rizal, Goodwill Consulting
- BF [ 1745154 ] Cost in Reversing Material Related Docs, Teo Sarca, www.arhipac.ro
- FR [ 2214883 ] Remove SQL code and Replace for Query
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected MMovementConfirm[]Confirmationsprotected booleanJust Prepared Flagprotected MMovementLine[]Linesprotected StringProcess Messageprotected booleanReversal Flagstatic StringReversal IndicatorFields inherited from class org.compiere.model.X_M_Movement
DELIVERYRULE_AD_Reference_ID, DELIVERYRULE_AfterPayment, DELIVERYRULE_Availability, DELIVERYRULE_CompleteLine, DELIVERYRULE_CompleteOrder, DELIVERYRULE_Force, DELIVERYRULE_Manual, DELIVERYVIARULE_AD_Reference_ID, DELIVERYVIARULE_Delivery, DELIVERYVIARULE_Pickup, DELIVERYVIARULE_Shipper, DOCACTION_AD_Reference_ID, DOCACTION_Approve, DOCACTION_Close, DOCACTION_Complete, DOCACTION_Invalidate, DOCACTION_None, DOCACTION_Post, DOCACTION_Prepare, DOCACTION_Re_Activate, DOCACTION_Reject, DOCACTION_Reverse_Accrual, DOCACTION_Reverse_Correct, DOCACTION_Unlock, DOCACTION_Void, DOCACTION_WaitComplete, DOCSTATUS_AD_Reference_ID, DOCSTATUS_Approved, DOCSTATUS_Closed, DOCSTATUS_Completed, DOCSTATUS_Drafted, DOCSTATUS_InProgress, DOCSTATUS_Invalid, DOCSTATUS_NotApproved, DOCSTATUS_Reversed, DOCSTATUS_Unknown, DOCSTATUS_Voided, DOCSTATUS_WaitingConfirmation, DOCSTATUS_WaitingPayment, FREIGHTCOSTRULE_AD_Reference_ID, FREIGHTCOSTRULE_Calculated, FREIGHTCOSTRULE_CustomerAccount, FREIGHTCOSTRULE_FixPrice, FREIGHTCOSTRULE_FreightIncluded, FREIGHTCOSTRULE_Line, PRIORITYRULE_AD_Reference_ID, PRIORITYRULE_High, PRIORITYRULE_Low, PRIORITYRULE_Medium, PRIORITYRULE_Minor, PRIORITYRULE_UrgentFields 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_IDFields inherited from interface org.compiere.process.DocAction
ACTION_Approve, ACTION_Close, ACTION_Complete, ACTION_Invalidate, ACTION_None, ACTION_Post, ACTION_Prepare, ACTION_ReActivate, ACTION_Reject, ACTION_Reverse_Accrual, ACTION_Reverse_Correct, ACTION_Unlock, ACTION_Void, ACTION_WaitComplete, AD_REFERENCE_ID, DOC_COLUMNNAME_AD_User_ID, DOC_COLUMNNAME_C_Currency_ID, DOC_COLUMNNAME_C_DocType_ID, DOC_COLUMNNAME_C_DocTypeTarget_ID, DOC_COLUMNNAME_DateAcct, DOC_COLUMNNAME_DateTrx, DOC_COLUMNNAME_Description, DOC_COLUMNNAME_DocAction, DOC_COLUMNNAME_DocStatus, DOC_COLUMNNAME_DocumentNo, DOC_COLUMNNAME_IsApproved, DOC_COLUMNNAME_Processed, DOC_COLUMNNAME_Processing, DOC_COLUMNNAME_SalesRep_ID, STATUS_Approved, STATUS_Closed, STATUS_Completed, STATUS_Drafted, STATUS_InProgress, STATUS_Invalid, STATUS_NotApproved, STATUS_Reversed, STATUS_Unknown, STATUS_Voided, STATUS_WaitingConfirmation, STATUS_WaitingPaymentFields inherited from interface org.compiere.model.I_M_Movement
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_AD_OrgTrx_ID, COLUMNNAME_AD_User_ID, COLUMNNAME_ApprovalAmt, COLUMNNAME_C_Activity_ID, COLUMNNAME_C_BPartner_ID, COLUMNNAME_C_BPartner_Location_ID, COLUMNNAME_C_Campaign_ID, COLUMNNAME_C_Charge_ID, COLUMNNAME_C_CostCenter_ID, COLUMNNAME_C_Department_ID, COLUMNNAME_C_DocType_ID, COLUMNNAME_C_Project_ID, COLUMNNAME_ChargeAmt, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_CreateFrom, COLUMNNAME_DateReceived, COLUMNNAME_DD_Order_ID, COLUMNNAME_DeliveryRule, COLUMNNAME_DeliveryViaRule, COLUMNNAME_Description, COLUMNNAME_DocAction, COLUMNNAME_DocStatus, COLUMNNAME_DocumentNo, COLUMNNAME_FreightAmt, COLUMNNAME_FreightCostRule, COLUMNNAME_IsActive, COLUMNNAME_IsApproved, COLUMNNAME_IsInTransit, COLUMNNAME_M_Movement_ID, COLUMNNAME_M_Movement_UU, COLUMNNAME_M_Shipper_ID, COLUMNNAME_M_Warehouse_ID, COLUMNNAME_M_WarehouseTo_ID, COLUMNNAME_MovementDate, COLUMNNAME_POReference, COLUMNNAME_Posted, COLUMNNAME_PriorityRule, COLUMNNAME_Processed, COLUMNNAME_ProcessedOn, COLUMNNAME_Processing, COLUMNNAME_Reversal_ID, COLUMNNAME_SalesRep_ID, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, COLUMNNAME_User1_ID, COLUMNNAME_User2_ID, Model, Table_ID, Table_Name -
Constructor Summary
ConstructorsConstructorDescriptionMMovement(Properties ctx, int M_Movement_ID, String trxName) Standard ConstructorMMovement(Properties ctx, String M_Movement_UU, String trxName) UUID based ConstructorMMovement(Properties ctx, ResultSet rs, String trxName) Load Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDescription(String description) Add to DescriptionbooleanApprove Documentprotected booleanbeforeSave(boolean newRecord) Called before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.protected voidcheckMaterialPolicy(MMovementLine line, BigDecimal qtyToDeliver) Check Material Policy.booleancloseIt()Close Document.Complete Documentprotected voidCreate Movement ConfirmationCreate PDFCreate PDF fileintGet Document CurrencygetConfirmations(boolean requery) Get ConfirmationsintGet Document Owner (Responsible)Get Document InfogetLines(boolean requery) Get LinesGet Process MessageGet SummarybooleanInvalidate DocumentbooleanDocument Status is Complete or Closedprotected booleanIs ReversalbooleanOutstanding (not processed) movement Confirmations ?Prepare DocumentbooleanProcess documentbooleanRe-activatebooleanrejectIt()Reject Approvalprotected MMovementreverse(boolean accrual) Reverse this movement documentbooleanReverse Accrual - use current datebooleanReverse Correctionprotected voidSet the definite document number after completedvoidsetProcessed(boolean processed) Set Processed.protected voidsetReversal(boolean reversal) Set Reversal state (in memory flag)booleanunlockIt()Unlock Document.booleanvoidIt()Void Document.Methods inherited from class org.compiere.model.X_M_Movement
get_AccessLevel, getAD_OrgTrx_ID, getAD_User, getAD_User_ID, getApprovalAmt, getC_Activity, getC_Activity_ID, getC_BPartner, getC_BPartner_ID, getC_BPartner_Location, getC_BPartner_Location_ID, getC_Campaign, getC_Campaign_ID, getC_Charge, getC_Charge_ID, getC_CostCenter, getC_CostCenter_ID, getC_Department, getC_Department_ID, getC_DocType, getC_DocType_ID, getC_Project, getC_Project_ID, getChargeAmt, getCreateFrom, getDateReceived, getDD_Order, getDD_Order_ID, getDeliveryRule, getDeliveryViaRule, getDescription, getDocAction, getDocStatus, getDocumentNo, getFreightAmt, getFreightCostRule, getKeyNamePair, getM_Movement_ID, getM_Movement_UU, getM_Shipper, getM_Shipper_ID, getM_Warehouse, getM_Warehouse_ID, getM_WarehouseTo, getM_WarehouseTo_ID, getMovementDate, getPOReference, getPriorityRule, getProcessedOn, getReversal, getReversal_ID, getSalesRep, getSalesRep_ID, getUser1, getUser1_ID, getUser2, getUser2_ID, initPO, isApproved, isInTransit, isPosted, isProcessed, isProcessing, setAD_OrgTrx_ID, setAD_User_ID, setApprovalAmt, setC_Activity_ID, setC_BPartner_ID, setC_BPartner_Location_ID, setC_Campaign_ID, setC_Charge_ID, setC_CostCenter_ID, setC_Department_ID, setC_DocType_ID, setC_Project_ID, setChargeAmt, setCreateFrom, setDateReceived, setDD_Order_ID, setDeliveryRule, setDeliveryViaRule, setDescription, setDocAction, setDocStatus, setDocumentNo, setFreightAmt, setFreightCostRule, setIsApproved, setIsInTransit, setM_Movement_ID, setM_Movement_UU, setM_Shipper_ID, setM_Warehouse_ID, setM_WarehouseTo_ID, setMovementDate, setPOReference, setPosted, setPriorityRule, setProcessedOn, setProcessing, setReversal_ID, setSalesRep_ID, setUser1_ID, setUser2_ID, toStringMethods inherited from class org.compiere.model.PO
afterDelete, afterSave, beforeDelete, 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_TableAttribute, get_TableAttributeAsBoolean, get_TableAttributeAsInt, get_TableAttributes, 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, validForeignKeysExMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Comparator
reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLongMethods inherited from interface org.compiere.process.DocAction
get_ID, get_Logger, get_Table_ID, get_TrxName, getAD_Client_ID, getAD_Org_ID, getApprovalAmt, getCtx, getDocAction, getDocStatus, getDocumentNo, save, saveEx, setDocStatusMethods inherited from interface org.compiere.model.I_M_Movement
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActiveMethods inherited from interface org.compiere.model.I_Persistent
save
-
Field Details
-
m_lines
Lines -
m_confirms
Confirmations -
REVERSE_INDICATOR
Reversal Indicator -
m_processMsg
Process Message -
m_justPrepared
protected boolean m_justPreparedJust Prepared Flag -
m_reversal
protected boolean m_reversalReversal Flag
-
-
Constructor Details
-
MMovement
UUID based Constructor- Parameters:
ctx- ContextM_Movement_UU- UUID keytrxName- Transaction
-
MMovement
Standard Constructor- Parameters:
ctx- contextM_Movement_ID- idtrxName- transaction
-
MMovement
Load Constructor- Parameters:
ctx- contextrs- result settrxName- transaction
-
-
Method Details
-
getLines
Get Lines- Parameters:
requery- requery- Returns:
- array of lines
-
getConfirmations
Get Confirmations- Parameters:
requery- requery- Returns:
- array of Confirmations
-
addDescription
Add to Description- Parameters:
description- text
-
getDocumentInfo
Get Document Info- Specified by:
getDocumentInfoin interfaceDocAction- Returns:
- document info (untranslated)
-
createPDF
Create PDF -
createPDF
Create PDF file- Parameters:
file- output file- Returns:
- not implemented, always return null
-
beforeSave
protected boolean beforeSave(boolean newRecord) Description copied from class:POCalled before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.- Overrides:
beforeSavein classPO- Parameters:
newRecord- true if it is a new record- Returns:
- true if record can be saved
-
setProcessed
public void setProcessed(boolean processed) Set Processed. Propagate to Lines.- Specified by:
setProcessedin interfaceI_M_Movement- Overrides:
setProcessedin classX_M_Movement- Parameters:
processed- processed
-
processIt
Process document -
unlockIt
public boolean unlockIt()Unlock Document. -
invalidateIt
public boolean invalidateIt()Invalidate Document- Specified by:
invalidateItin interfaceDocAction- Returns:
- true if success
-
prepareIt
Prepare Document -
createConfirmation
protected void createConfirmation()Create Movement Confirmation -
approveIt
public boolean approveIt()Approve Document -
rejectIt
public boolean rejectIt()Reject Approval -
completeIt
Complete Document- Specified by:
completeItin interfaceDocAction- Returns:
- new status (Complete, In Progress, Invalid, Waiting ..)
-
pendingConfirmations
public boolean pendingConfirmations()Outstanding (not processed) movement Confirmations ?- Returns:
- true if there are pending Confirmations
-
setDefiniteDocumentNo
protected void setDefiniteDocumentNo()Set the definite document number after completed -
checkMaterialPolicy
Check Material Policy. Create MMovementLineMA records (if line M_AttributeSetInstance_ID is 0).- Parameters:
line-qtyToDeliver-
-
voidIt
public boolean voidIt()Void Document. -
closeIt
public boolean closeIt()Close Document. -
reverseCorrectIt
public boolean reverseCorrectIt()Reverse Correction- Specified by:
reverseCorrectItin interfaceDocAction- Returns:
- false
-
reverse
Reverse this movement document- Parameters:
accrual- true to use current date, false to use movement date of this document- Returns:
- reversal movement document
-
reverseAccrualIt
public boolean reverseAccrualIt()Reverse Accrual - use current date- Specified by:
reverseAccrualItin interfaceDocAction- Returns:
- false
-
reActivateIt
public boolean reActivateIt()Re-activate- Specified by:
reActivateItin interfaceDocAction- Returns:
- false
-
getSummary
Get Summary- Specified by:
getSummaryin interfaceDocAction- Returns:
- Summary of Document
-
getProcessMsg
Get Process Message- Specified by:
getProcessMsgin interfaceDocAction- Returns:
- clear text error message
-
getDoc_User_ID
public int getDoc_User_ID()Get Document Owner (Responsible)- Specified by:
getDoc_User_IDin interfaceDocAction- Returns:
- AD_User_ID
-
getC_Currency_ID
public int getC_Currency_ID()Get Document Currency- Specified by:
getC_Currency_IDin interfaceDocAction- Returns:
- C_Currency_ID
-
setReversal
protected void setReversal(boolean reversal) Set Reversal state (in memory flag)- Parameters:
reversal- reversal
-
isReversal
protected boolean isReversal()Is Reversal- Returns:
- reversal state (in memory flag)
-
isComplete
public boolean isComplete()Document Status is Complete or Closed- Returns:
- true if CO, CL or RE
-