psdi.app.invoice

Class FldInvoiceLinePONum

  • All Implemented Interfaces:
    MboConstants, MboValueListener


    public class FldInvoiceLinePONum
    extends FldPONum
    InvoiceLine.ponum validation class: Validates that the entered PO is a valid PO and the invoice line PO is the same as the Invoice PO. If the invoice does not have a PO the invoice line PO's vendor should be the same as the invoice vendor or it's branches. Also PO's whose status is Waiting for Approval or Canceled cannot be used for this invoice line.
    See Also:
    FldPONum
    • Constructor Detail

      • FldInvoiceLinePONum

        public FldInvoiceLinePONum(MboValue mbv)
                            throws MXException,
                                   java.rmi.RemoteException
        Construct and attach to the mbo value
        Throws:
        MXException
        java.rmi.RemoteException
    • Method Detail

      • validate

        public void validate()
                      throws MXException,
                             java.rmi.RemoteException
        Validation checks if the PO entered is the same as on the parent invoice, uses base class FldPONum for this. If there is no PO on the invoice but you put a PO on the invoice line the entered PO's vendor has to be the same as the invoice vendor or one of its branches. A PO whose status is Waiting for Approval or Canceled cannot be used here. Also the PO cannot be internal.
        Specified by:
        validate in interface MboValueListener
        Overrides:
        validate in class MAXTableDomain
        Throws:
        MXApplicationException
        MXException
        java.rmi.RemoteException
      • getList

        public MboSetRemote getList()
                             throws MXException,
                                    java.rmi.RemoteException
        Return list of APPR, INPRG and CLOSE status POs from the PO table. POs should not be internal and cannot have a status of WAPPR and CAN. Also if the invoice has a vendor, the entered PO's vendor should be the same as the invoice vendor or its branches. If there is a ponum on the invoice header, we should return a list which has only that PO mbo. If the user selects this PO a message will come up saying that this field is readonly, which is correct. Since the header has a ponum, we are not allowed to enter ponum on the invoice lines. This method is used by the lookup on the PO field on the invoice line.
        Specified by:
        getList in interface MboValueListener
        Overrides:
        getList in class MAXTableDomain
        Throws:
        MXException
        java.rmi.RemoteException