Compiere 3.1

org.compiere.model
Class MInOut

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

public class MInOut
extends X_M_InOut
implements DocAction

Shipment Model

Version:
$Id: MInOut.java,v 1.4 2006/07/30 00:51:03 jjanke Exp $
Author:
Jorg Janke
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.compiere.model.X_M_InOut
accessLevel, AD_ORGTRX_ID_AD_Reference_ID, C_CHARGE_ID_AD_Reference_ID, C_DOCTYPE_ID_AD_Reference_ID, DELIVERYRULE_AD_Reference_ID, DELIVERYRULE_AfterReceipt, 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_FixPrice, FREIGHTCOSTRULE_FreightIncluded, FREIGHTCOSTRULE_Line, MATCHREQUIREMENTR_AD_Reference_ID, MATCHREQUIREMENTR_Invoice, MATCHREQUIREMENTR_None, MATCHREQUIREMENTR_PurchaseOrder, MATCHREQUIREMENTR_PurchaseOrderAndInvoice, Model, MOVEMENTTYPE_AD_Reference_ID, MOVEMENTTYPE_CustomerReturns, MOVEMENTTYPE_CustomerShipment, MOVEMENTTYPE_InventoryIn, MOVEMENTTYPE_InventoryOut, MOVEMENTTYPE_MovementFrom, MOVEMENTTYPE_MovementTo, MOVEMENTTYPE_Production_, MOVEMENTTYPE_ProductionPlus, MOVEMENTTYPE_VendorReceipts, MOVEMENTTYPE_VendorReturns, MOVEMENTTYPE_WorkOrder_, MOVEMENTTYPE_WorkOrderPlus, ORIG_INOUT_ID_AD_Reference_ID, ORIG_ORDER_ID_AD_Reference_ID, PRIORITYRULE_AD_Reference_ID, PRIORITYRULE_High, PRIORITYRULE_Low, PRIORITYRULE_Medium, PRIORITYRULE_Minor, PRIORITYRULE_Urgent, SALESREP_ID_AD_Reference_ID, Table_ID, Table_Name, updatedMS, USER1_ID_AD_Reference_ID, USER2_ID_AD_Reference_ID
 
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
 
Fields 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_ReOpen, ACTION_Reverse_Accrual, ACTION_Reverse_Correct, ACTION_Unlock, ACTION_Void, ACTION_WaitComplete, STATUS_Approved, STATUS_Closed, STATUS_Completed, STATUS_Drafted, STATUS_InProgress, STATUS_Invalid, STATUS_NotApproved, STATUS_Reversed, STATUS_Unknown, STATUS_Voided, STATUS_WaitingConfirmation, STATUS_WaitingPayment
 
Constructor Summary
MInOut(Ctx ctx, int M_InOut_ID, String trxName)
          Standard Constructor
MInOut(Ctx ctx, ResultSet rs, String trxName)
          Load Constructor
MInOut(MInOut original, int C_DocTypeShipment_ID, Timestamp movementDate)
          Copy Constructor - create header only
MInOut(MInvoice invoice, int C_DocTypeShipment_ID, Timestamp movementDate, int M_Warehouse_ID)
          Invoice Constructor - create header only
MInOut(MOrder order, int C_DocTypeShipment_ID, Timestamp movementDate)
          Order Constructor - create header only
 
Method Summary
 void addDescription(String description)
          Add to Description
protected  boolean afterSave(boolean newRecord, boolean success)
          After Save
 boolean approveIt()
          Approve Document
protected  boolean beforeSave(boolean newRecord)
          Before Save
 boolean closeIt()
          Close Document.
 String completeIt()
          Complete Document
static MInOut copyFrom(MInOut from, Timestamp dateDoc, int C_DocType_ID, boolean isSOTrx, boolean isReturnTrx, boolean counter, String trxName, boolean setOrder)
          Create new Shipment by copying
 int copyLinesFrom(MInOut otherShipment, boolean counter, boolean setOrder)
          Copy Lines From other Shipment
 void createConfirmation()
          Create the missing next Confirmation
static MInOut createFrom(MOrder order, Timestamp movementDate, boolean forceDelivery, boolean allAttributeInstances, Timestamp minGuaranteeDate, boolean complete, String trxName)
          Create Shipment From Order
 File createPDF()
          Create PDF
 File createPDF(File file)
          Create PDF file
 BigDecimal getApprovalAmt()
          Get Document Approval Amount
 MBPartner getBPartner()
          Get BPartner
 int getC_Currency_ID()
          Get C_Currency_ID
 MInOutConfirm[] getConfirmations(boolean requery)
          Get Confirmations
 int getDoc_User_ID()
          Get Document Owner (Responsible)
 String getDocStatusName()
          Get Document Status
 String getDocumentInfo()
          Get Document Info
 MInOutLine[] getLines()
          Get Lines of Shipment
 MInOutLine[] getLines(boolean requery)
          Get Lines of Shipment
 String getProcessMsg()
          Get Process Message
 String getSummary()
          Get Summary
 boolean invalidateIt()
          Invalidate Document
 boolean isComplete()
          Document Status is Complete or Closed
 boolean isOnlyForOrder(MOrder order)
          Is Only For Order
 String prepareIt()
          Prepare Document
 boolean processIt(String processAction)
          Process document
 boolean reActivateIt()
          Re-activate
 boolean rejectIt()
          Reject Approval
 boolean reverseAccrualIt()
          Reverse Accrual - none
 boolean reverseCorrectIt()
          Reverse Correction - same date
 boolean reverseCorrectIt(MOrder order)
          Reverse Correction - same date
 void setBPartner(MBPartner bp)
          Set Business Partner Defaults & Details
 void setC_BPartner_ID(String oldC_BPartner_ID, String newC_BPartner_ID, int windowNo)
          Set Business Partner - Callout
 void setC_DocType_ID()
          Set Default C_DocType_ID.
 void setC_DocType_ID(int C_DocType_ID, boolean setReturnTrx)
          Set Document Type
 void setC_DocType_ID(String DocBaseType)
          Set Document Type
 void setC_DocType_ID(String oldC_DocType_ID, String newC_DocType_ID, int windowNo)
          Set Document Type - Callout.
 void setC_Order_ID(String oldC_Order_ID, String newC_Order_ID, int windowNo)
          Set Order - Callout
 void setM_Warehouse_ID(int M_Warehouse_ID)
          Set Warehouse and check/set Organization
 void setM_Warehouse_ID(String oldM_Warehouse_ID, String newM_Warehouse_ID, int windowNo)
          Set Business Partner - Callout
 void setMovementDate(String oldMovementDate, String newMovementDate, int windowNo)
          Set Movement Date - Callout
 void setProcessed(boolean processed)
          Set Processed.
 String toString()
          String representation
 boolean unlockIt()
          Unlock Document.
 boolean voidIt()
          Void Document.
 
Methods inherited from class org.compiere.model.X_M_InOut
get_AccessLevel, getAD_OrgTrx_ID, getAD_User_ID, getC_Activity_ID, getC_BPartner_ID, getC_BPartner_Location_ID, getC_Campaign_ID, getC_Charge_ID, getC_DocType_ID, getC_Invoice_ID, getC_Order_ID, getC_Project_ID, getChargeAmt, getCreateConfirm, getCreateFrom, getCreatePackage, getDateAcct, getDateOrdered, getDatePrinted, getDateReceived, getDeliveryRule, getDeliveryViaRule, getDescription, getDocAction, getDocStatus, getDocumentNo, getFreightAmt, getFreightCostRule, getGenerateTo, getKeyNamePair, getM_InOut_ID, getM_Shipper_ID, getM_Warehouse_ID, getMatchRequirementR, getMovementDate, getMovementType, getNoPackages, getOrig_InOut_ID, getOrig_Order_ID, getPickDate, getPOReference, getPriorityRule, getRef_InOut_ID, getSalesRep_ID, getShipDate, getTrackingNo, getUser1_ID, getUser2_ID, getVolume, getWeight, initPO, isApproved, isDeliveryRuleValid, isDeliveryViaRuleValid, isDocActionValid, isDocStatusValid, isFreightCostRuleValid, isInDispute, isInTransit, isMatchRequirementRValid, isMovementTypeValid, isPosted, isPrinted, isPriorityRuleValid, isProcessed, isProcessing, isReturnTrx, 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, setDateAcct, setDateOrdered, setDatePrinted, setDateReceived, setDeliveryRule, setDeliveryViaRule, setDescription, setDocAction, setDocStatus, setDocumentNo, setFreightAmt, setFreightCostRule, setGenerateTo, setIsApproved, setIsInDispute, setIsInTransit, setIsPrinted, setIsReturnTrx, setIsSOTrx, setM_InOut_ID, setM_Shipper_ID, setMatchRequirementR, setMovementDate, setMovementType, setNoPackages, setOrig_InOut_ID, setOrig_Order_ID, setPickDate, setPOReference, setPosted, setPriorityRule, setProcessing, setRef_InOut_ID, setSalesRep_ID, setSendEMail, setShipDate, setTrackingNo, setUser1_ID, setUser2_ID, setVolume, setWeight
 
Methods inherited from class org.compiere.framework.PO
addAttachment, addAttachment, addError, afterDelete, 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
 
Methods 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, setDocStatus
 

Constructor Detail

MInOut

public MInOut(Ctx ctx,
              int M_InOut_ID,
              String trxName)
Standard Constructor

Parameters:
ctx - context
M_InOut_ID -
trxName - rx name

MInOut

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

Parameters:
ctx - context
rs - result set record
trxName - transaction

MInOut

public MInOut(MOrder order,
              int C_DocTypeShipment_ID,
              Timestamp movementDate)
Order Constructor - create header only

Parameters:
order - order
movementDate - optional movement date (default today)
C_DocTypeShipment_ID - document type or 0

MInOut

public MInOut(MInvoice invoice,
              int C_DocTypeShipment_ID,
              Timestamp movementDate,
              int M_Warehouse_ID)
Invoice Constructor - create header only

Parameters:
invoice - invoice
C_DocTypeShipment_ID - document type or 0
movementDate - optional movement date (default today)
M_Warehouse_ID - warehouse

MInOut

public MInOut(MInOut original,
              int C_DocTypeShipment_ID,
              Timestamp movementDate)
Copy Constructor - create header only

Parameters:
original - original
movementDate - optional movement date (default today)
C_DocTypeShipment_ID - document type or 0
Method Detail

createFrom

public static MInOut createFrom(MOrder order,
                                Timestamp movementDate,
                                boolean forceDelivery,
                                boolean allAttributeInstances,
                                Timestamp minGuaranteeDate,
                                boolean complete,
                                String trxName)
Create Shipment From Order

Parameters:
order - order
movementDate - optional movement date
forceDelivery - ignore order delivery rule
allAttributeInstances - if true, all attribute set instances
minGuaranteeDate - optional minimum guarantee date if all attribute instances
complete - complete document (Process if false, Complete if true)
trxName - transaction
Returns:
Shipment or null

copyFrom

public static MInOut copyFrom(MInOut from,
                              Timestamp dateDoc,
                              int C_DocType_ID,
                              boolean isSOTrx,
                              boolean isReturnTrx,
                              boolean counter,
                              String trxName,
                              boolean setOrder)
Create new Shipment by copying

Parameters:
from - shipment
dateDoc - date of the document date
C_DocType_ID - doc type
isSOTrx - sales order
counter - create counter links
trxName - trx
setOrder - set the order link
Returns:
Shipment

getDocStatusName

public String getDocStatusName()
Get Document Status

Returns:
Document Status Clear Text

addDescription

public void addDescription(String description)
Add to Description

Parameters:
description - text

toString

public String toString()
String representation

Overrides:
toString in class X_M_InOut
Returns:
info

getDocumentInfo

public String getDocumentInfo()
Get Document Info

Specified by:
getDocumentInfo in interface DocAction
Returns:
document info (untranslated)

createPDF

public File createPDF()
Create PDF

Specified by:
createPDF in interface DocAction
Returns:
File or null

createPDF

public File createPDF(File file)
Create PDF file

Parameters:
file - output file
Returns:
file if success

getLines

public MInOutLine[] getLines(boolean requery)
Get Lines of Shipment

Parameters:
requery - refresh from db
Returns:
lines

getLines

public MInOutLine[] getLines()
Get Lines of Shipment

Returns:
lines

getConfirmations

public MInOutConfirm[] getConfirmations(boolean requery)
Get Confirmations

Parameters:
requery - requery
Returns:
array of Confirmations

copyLinesFrom

public int copyLinesFrom(MInOut otherShipment,
                         boolean counter,
                         boolean setOrder)
Copy Lines From other Shipment

Parameters:
otherShipment - shipment
counter - set counter info
setOrder - set order link
Returns:
number of lines copied

setC_Order_ID

@UICallout
public void setC_Order_ID(String oldC_Order_ID,
                                    String newC_Order_ID,
                                    int windowNo)
                   throws Exception
Set Order - Callout

Parameters:
oldC_Order_ID - old BP
newC_Order_ID - new BP
windowNo - window no
Throws:
Exception

setProcessed

public void setProcessed(boolean processed)
Set Processed. Propergate to Lines/Taxes

Overrides:
setProcessed in class X_M_InOut
Parameters:
processed - processed

getBPartner

public MBPartner getBPartner()
Get BPartner

Returns:
partner

setC_DocType_ID

public void setC_DocType_ID(String DocBaseType)
Set Document Type

Parameters:
DocBaseType - doc type MDocBaseType.DOCBASETYPE_

setC_DocType_ID

public void setC_DocType_ID()
Set Default C_DocType_ID. Based on SO flag


setC_DocType_ID

public void setC_DocType_ID(int C_DocType_ID,
                            boolean setReturnTrx)
Set Document Type

Parameters:
C_DocType_ID - dt
setReturnTrx - if true set IsRteurnTrx and SOTrx

setC_DocType_ID

@UICallout
public void setC_DocType_ID(String oldC_DocType_ID,
                                      String newC_DocType_ID,
                                      int windowNo)
                     throws Exception
Set Document Type - Callout. Sets MovementType, DocumentNo

Parameters:
oldC_DocType_ID - old ID
newC_DocType_ID - new ID
windowNo - window
Throws:
Exception

setBPartner

public void setBPartner(MBPartner bp)
Set Business Partner Defaults & Details

Parameters:
bp - business partner

setC_BPartner_ID

@UICallout
public void setC_BPartner_ID(String oldC_BPartner_ID,
                                       String newC_BPartner_ID,
                                       int windowNo)
                      throws Exception
Set Business Partner - Callout

Parameters:
oldC_BPartner_ID - old BP
newC_BPartner_ID - new BP
windowNo - window no
Throws:
Exception

setMovementDate

@UICallout
public void setMovementDate(String oldMovementDate,
                                      String newMovementDate,
                                      int windowNo)
                     throws Exception
Set Movement Date - Callout

Parameters:
oldDateOrdered - old
newDateOrdered - new
windowNo - window no
Throws:
Exception

setM_Warehouse_ID

public void setM_Warehouse_ID(int M_Warehouse_ID)
Set Warehouse and check/set Organization

Overrides:
setM_Warehouse_ID in class X_M_InOut
Parameters:
M_Warehouse_ID - id

setM_Warehouse_ID

@UICallout
public void setM_Warehouse_ID(String oldM_Warehouse_ID,
                                        String newM_Warehouse_ID,
                                        int windowNo)
                       throws Exception
Set Business Partner - Callout

Parameters:
oldM_Warehouse_ID - old BP
newM_Warehouse_ID - new BP
windowNo - window no
Throws:
Exception

createConfirmation

public void createConfirmation()
Create the missing next Confirmation


beforeSave

protected boolean beforeSave(boolean newRecord)
Before Save

Overrides:
beforeSave in class PO
Parameters:
newRecord - new
Returns:
true or false

afterSave

protected boolean afterSave(boolean newRecord,
                            boolean success)
After Save

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

processIt

public boolean processIt(String processAction)
Process document

Specified by:
processIt in interface DocAction
Parameters:
processAction - document action
Returns:
true if performed

unlockIt

public boolean unlockIt()
Unlock Document.

Specified by:
unlockIt in interface DocAction
Returns:
true if success

invalidateIt

public boolean invalidateIt()
Invalidate Document

Specified by:
invalidateIt in interface DocAction
Returns:
true if success

prepareIt

public String prepareIt()
Prepare Document

Specified by:
prepareIt in interface DocAction
Returns:
new status (In Progress or Invalid)

approveIt

public boolean approveIt()
Approve Document

Specified by:
approveIt in interface DocAction
Returns:
true if success

rejectIt

public boolean rejectIt()
Reject Approval

Specified by:
rejectIt in interface DocAction
Returns:
true if success

completeIt

public String completeIt()
Complete Document

Specified by:
completeIt in interface DocAction
Returns:
new status (Complete, In Progress, Invalid, Waiting ..)

voidIt

public boolean voidIt()
Void Document.

Specified by:
voidIt in interface DocAction
Returns:
true if success

closeIt

public boolean closeIt()
Close Document.

Specified by:
closeIt in interface DocAction
Returns:
true if success

isOnlyForOrder

public boolean isOnlyForOrder(MOrder order)
Is Only For Order

Parameters:
order - order
Returns:
true if all shipment lines are from this order

reverseCorrectIt

public boolean reverseCorrectIt(MOrder order)
Reverse Correction - same date

Parameters:
order - if not null only for this order
Returns:
true if success

reverseCorrectIt

public boolean reverseCorrectIt()
Reverse Correction - same date

Specified by:
reverseCorrectIt in interface DocAction
Returns:
true if success

reverseAccrualIt

public boolean reverseAccrualIt()
Reverse Accrual - none

Specified by:
reverseAccrualIt in interface DocAction
Returns:
false

reActivateIt

public boolean reActivateIt()
Re-activate

Specified by:
reActivateIt in interface DocAction
Returns:
false

getSummary

public String getSummary()
Get Summary

Specified by:
getSummary in interface DocAction
Returns:
Summary of Document

getProcessMsg

public String getProcessMsg()
Get Process Message

Specified by:
getProcessMsg in interface DocAction
Returns:
clear text error message

getDoc_User_ID

public int getDoc_User_ID()
Get Document Owner (Responsible)

Specified by:
getDoc_User_ID in interface DocAction
Returns:
AD_User_ID

getApprovalAmt

public BigDecimal getApprovalAmt()
Get Document Approval Amount

Specified by:
getApprovalAmt in interface DocAction
Returns:
amount

getC_Currency_ID

public int getC_Currency_ID()
Get C_Currency_ID

Specified by:
getC_Currency_ID in interface DocAction
Returns:
Accounting Currency

isComplete

public boolean isComplete()
Document Status is Complete or Closed

Returns:
true if CO, CL or RE

Compiere 3.1

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