Package org.eevolution.model
Class MDDOrder
java.lang.Object
org.compiere.model.PO
org.eevolution.model.X_DD_Order
org.eevolution.model.MDDOrder
- All Implemented Interfaces:
Serializable,Cloneable,Comparator<Object>,I_Persistent,DocAction,Evaluatee,I_DD_Order
Order Distribution Model.
Please do not set DocStatus and C_DocType_ID directly.
They are set in the process() method.
Use DocAction and C_DocTypeTarget_ID instead.
- Author:
- victor.perez@e-evolution.com, e-Evolution http://www.e-evolution.com
- Original contributor of Distribution Functionality
- FR [ 2520591 ] Support multiples calendar for Org
- See Also:
-
Field Summary
Fields inherited from class org.eevolution.model.X_DD_Order
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.eevolution.model.I_DD_Order
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_AD_OrgTrx_ID, COLUMNNAME_AD_User_ID, COLUMNNAME_C_Activity_ID, COLUMNNAME_C_BPartner_ID, COLUMNNAME_C_BPartner_Location_ID, COLUMNNAME_C_Campaign_ID, COLUMNNAME_C_Charge_ID, COLUMNNAME_C_DocType_ID, COLUMNNAME_C_Invoice_ID, COLUMNNAME_C_Order_ID, COLUMNNAME_C_Project_ID, COLUMNNAME_ChargeAmt, COLUMNNAME_CreateConfirm, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_CreateFrom, COLUMNNAME_CreatePackage, COLUMNNAME_DateOrdered, COLUMNNAME_DatePrinted, COLUMNNAME_DatePromised, COLUMNNAME_DateReceived, COLUMNNAME_DD_Order_ID, COLUMNNAME_DD_Order_UU, COLUMNNAME_DeliveryRule, COLUMNNAME_DeliveryViaRule, COLUMNNAME_Description, COLUMNNAME_DocAction, COLUMNNAME_DocStatus, COLUMNNAME_DocumentNo, COLUMNNAME_FreightAmt, COLUMNNAME_FreightCostRule, COLUMNNAME_GenerateTo, COLUMNNAME_IsActive, COLUMNNAME_IsApproved, COLUMNNAME_IsDelivered, COLUMNNAME_IsDropShip, COLUMNNAME_IsInDispute, COLUMNNAME_IsInTransit, COLUMNNAME_IsPrinted, COLUMNNAME_IsSelected, COLUMNNAME_IsSOTrx, COLUMNNAME_M_Shipper_ID, COLUMNNAME_M_Warehouse_ID, COLUMNNAME_NoPackages, COLUMNNAME_PickDate, COLUMNNAME_POReference, COLUMNNAME_Posted, COLUMNNAME_PriorityRule, COLUMNNAME_Processed, COLUMNNAME_ProcessedOn, COLUMNNAME_Processing, COLUMNNAME_Ref_Order_ID, COLUMNNAME_SalesRep_ID, COLUMNNAME_SendEMail, COLUMNNAME_ShipDate, COLUMNNAME_TrackingNo, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, COLUMNNAME_User1_ID, COLUMNNAME_User2_ID, COLUMNNAME_Volume, COLUMNNAME_Weight, Model, Table_ID, Table_Name -
Constructor Summary
ConstructorsConstructorDescriptionMDDOrder(Properties ctx, int DD_Order_ID, String trxName) Default ConstructorMDDOrder(Properties ctx, int DD_Order_ID, String trxName, String... virtualColumns) MDDOrder(Properties ctx, String DD_Order_UU, String trxName) UUID based ConstructorMDDOrder(Properties ctx, ResultSet rs, String trxName) Load ConstructorProject Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDescription(String description) Add to Descriptionprotected booleanafterSave(boolean newRecord, boolean success) Called after Save for Post-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.booleanApprove Documentprotected booleanExecute before Delete operations.
Default implementation is nop, to be implemented in sub-classes that needed it.protected booleanbeforeSave(boolean newRecord) Called before Save for Pre-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it.booleancloseIt()Close Document.Complete Documentstatic MDDOrdercopyFrom(MDDOrder from, Timestamp dateDoc, int C_DocTypeTarget_ID, boolean isSOTrx, boolean counter, boolean copyASI, String trxName) Create new Order by copyingintcopyLinesFrom(MDDOrder otherOrder, boolean counter, boolean copyASI) Copy Lines From other OrderCreate PDFCreate PDF fileGet Document Approval AmountintGet Document CurrencyintGet Document Owner (Responsible)Get Document StatusGet Document InfogetLines()Get Lines of Order.Get Lines of OrderGet Lines of OrderGet Shipments of OrderGet Process MessageGet SummarybooleanInvalidate DocumentbooleanDocument Status is Complete or ClosedPrepare DocumentbooleanProcess documentbooleanRe-activate.booleanrejectIt()Reject ApprovalvoidrenumberLines(int step) Renumber LinesvoidreserveStock(MDDOrderLine[] lines) Reserve Inventory.booleanReverse Accrual - nonebooleanReverse Correction - same voidvoidsetBPartner(MBPartner bp) Set Business Partner Defaults and Details.voidsetDocAction(String DocAction) Set DocActionvoidsetDocAction(String DocAction, boolean forceCreation) Set DocActionvoidsetProcessed(boolean processed) Set Processed.voidsetShip_BPartner_ID(int C_BPartner_ID) Set Ship Business PartnervoidsetShip_Location_ID(int C_BPartner_Location_ID) Set Ship Business Partner LocationvoidsetShip_User_ID(int AD_User_ID) Set Ship Business Partner ContacttoString()String RepresentationbooleanunlockIt()Unlock Document.booleanvoidIt()Void Document.Methods inherited from class org.eevolution.model.X_DD_Order
get_AccessLevel, getAD_OrgTrx_ID, getAD_User, getAD_User_ID, 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_DocType, getC_DocType_ID, getC_Invoice, getC_Invoice_ID, getC_Order, getC_Order_ID, getC_Project, getC_Project_ID, getChargeAmt, getCreateConfirm, getCreateFrom, getCreatePackage, getDateOrdered, getDatePrinted, getDatePromised, getDateReceived, getDD_Order_ID, getDD_Order_UU, getDeliveryRule, getDeliveryViaRule, getDescription, getDocAction, getDocStatus, getDocumentNo, getFreightAmt, getFreightCostRule, getGenerateTo, getKeyNamePair, getM_Shipper, getM_Shipper_ID, getM_Warehouse, getM_Warehouse_ID, getNoPackages, getPickDate, getPOReference, getPriorityRule, getProcessedOn, getRef_Order, getRef_Order_ID, getSalesRep, getSalesRep_ID, getShipDate, getTrackingNo, getUser1, getUser1_ID, getUser2, getUser2_ID, getVolume, getWeight, initPO, isApproved, isDelivered, isDropShip, isInDispute, isInTransit, isPosted, isPrinted, isProcessed, isProcessing, isSelected, isSendEMail, isSOTrx, setAD_OrgTrx_ID, setAD_User_ID, setC_Activity_ID, setC_BPartner_ID, setC_BPartner_Location_ID, setC_Campaign_ID, setC_Charge_ID, setC_DocType_ID, setC_Invoice_ID, setC_Order_ID, setC_Project_ID, setChargeAmt, setCreateConfirm, setCreateFrom, setCreatePackage, setDateOrdered, setDatePrinted, setDatePromised, setDateReceived, setDD_Order_ID, setDD_Order_UU, setDeliveryRule, setDeliveryViaRule, setDescription, setDocStatus, setDocumentNo, setFreightAmt, setFreightCostRule, setGenerateTo, setIsApproved, setIsDelivered, setIsDropShip, setIsInDispute, setIsInTransit, setIsPrinted, setIsSelected, setIsSOTrx, setM_Shipper_ID, setM_Warehouse_ID, setNoPackages, setPickDate, setPOReference, setPosted, setPriorityRule, setProcessedOn, setProcessing, setRef_Order_ID, setSalesRep_ID, setSendEMail, setShipDate, setTrackingNo, setUser1_ID, setUser2_ID, setVolume, setWeightMethods inherited from class org.compiere.model.PO
afterDelete, 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, getCtx, getDocAction, getDocStatus, getDocumentNo, save, saveEx, setDocStatusMethods inherited from interface org.eevolution.model.I_DD_Order
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActiveMethods inherited from interface org.compiere.model.I_Persistent
save
-
Constructor Details
-
MDDOrder
UUID based Constructor- Parameters:
ctx- ContextDD_Order_UU- UUID keytrxName- Transaction
-
MDDOrder
Default Constructor- Parameters:
ctx- contextDD_Order_ID- order to load, (0 create new order)trxName- trx name
-
MDDOrder
Project Constructor- Parameters:
project- Project to create Order fromIsSOTrx- sales orderDocSubTypeSO- if SO DocType Target (default DocSubTypeSO_OnCredit)
-
MDDOrder
Load Constructor- Parameters:
ctx- contextrs- result set recordtrxName- transaction
-
MDDOrder
-
-
Method Details
-
copyFrom
public static MDDOrder copyFrom(MDDOrder from, Timestamp dateDoc, int C_DocTypeTarget_ID, boolean isSOTrx, boolean counter, boolean copyASI, String trxName) Create new Order by copying- Parameters:
from- orderdateDoc- date of the document dateC_DocTypeTarget_ID- target document typeisSOTrx- sales ordercounter- create counter linkscopyASI- copy line attributes Attribute Set Instance, Resaouce AssignmenttrxName- trx- Returns:
- Distribution Order
-
addDescription
Add to Description- Parameters:
description- text
-
setShip_BPartner_ID
public void setShip_BPartner_ID(int C_BPartner_ID) Set Ship Business Partner- Parameters:
C_BPartner_ID- bpartner
-
setShip_Location_ID
public void setShip_Location_ID(int C_BPartner_Location_ID) Set Ship Business Partner Location- Parameters:
C_BPartner_Location_ID- bp location
-
setShip_User_ID
public void setShip_User_ID(int AD_User_ID) Set Ship Business Partner Contact- Parameters:
AD_User_ID- user
-
setBPartner
Set Business Partner Defaults and Details. SOTrx should be set.- Parameters:
bp- business partner
-
copyLinesFrom
Copy Lines From other Order- Parameters:
otherOrder- ordercounter- set counter infocopyASI- copy line attributes Attribute Set Instance, Resource Assignment- Returns:
- number of lines copied
-
toString
String Representation- Overrides:
toStringin classX_DD_Order- Returns:
- info
-
getDocumentInfo
Get Document Info- Specified by:
getDocumentInfoin interfaceDocAction- Returns:
- document info (untranslated)
-
createPDF
Create PDF -
createPDF
Create PDF file- Parameters:
file- output file- Returns:
- file if success
-
getLines
Get Lines of Order- Parameters:
whereClause- where clause or null (starting with AND)orderClause- order clause- Returns:
- lines
-
getLines
Get Lines of Order- Parameters:
requery- requeryorderBy- optional order by column- Returns:
- lines
-
getLines
Get Lines of Order. (useb by web store)- Returns:
- lines
-
renumberLines
public void renumberLines(int step) Renumber Lines- Parameters:
step- start and step
-
getMovement
Get Shipments of Order- Returns:
- shipments
-
getDocStatusName
Get Document Status- Returns:
- Document Status Clear Text
-
setDocAction
Set DocAction- Specified by:
setDocActionin interfaceI_DD_Order- Overrides:
setDocActionin classX_DD_Order- Parameters:
DocAction- doc action
-
setProcessed
public void setProcessed(boolean processed) Set Processed. Propergate to Lines/Taxes- Specified by:
setProcessedin interfaceI_DD_Order- Overrides:
setProcessedin classX_DD_Order- Parameters:
processed- processed
-
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
-
afterSave
protected boolean afterSave(boolean newRecord, boolean success) Description copied from class:POCalled after Save for Post-Save Operation.
Default implementation is nop, to be implemented in sub-classes that needed it. -
setDocAction
Set DocAction- Parameters:
DocAction- doc octionforceCreation- force creation
-
beforeDelete
protected boolean beforeDelete()Description copied from class:POExecute before Delete operations.
Default implementation is nop, to be implemented in sub-classes that needed it.- Overrides:
beforeDeletein classPO- Returns:
- true if record can be deleted
-
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 -
reserveStock
Reserve Inventory. Counterpart: MMovement.completeIt()- Parameters:
lines- distribution order lines (ordered by M_Product_ID for deadlock prevention)
-
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 ..)
-
voidIt
public boolean voidIt()Void Document. Set Qtys to 0 - Sales: reverse all documents -
closeIt
public boolean closeIt()Close Document. Cancel not delivered Qunatities -
reverseCorrectIt
public boolean reverseCorrectIt()Reverse Correction - same void- Specified by:
reverseCorrectItin interfaceDocAction- Returns:
- true if success
-
reverseAccrualIt
public boolean reverseAccrualIt()Reverse Accrual - none- Specified by:
reverseAccrualItin interfaceDocAction- Returns:
- false
-
reActivateIt
public boolean reActivateIt()Re-activate.- Specified by:
reActivateItin interfaceDocAction- Returns:
- true if success
-
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
-
getApprovalAmt
Description copied from interface:DocActionGet Document Approval Amount- Specified by:
getApprovalAmtin interfaceDocAction- Returns:
- amount
-
getC_Currency_ID
public int getC_Currency_ID()Description copied from interface:DocActionGet Document Currency- Specified by:
getC_Currency_IDin interfaceDocAction- Returns:
- C_Currency_ID
-
isComplete
public boolean isComplete()Document Status is Complete or Closed- Returns:
- true if CO, CL or RE
-