示例#1
0
  /**
   * Constructor de la clase ...
   *
   * @param parent
   * @param M_AttributeSetInstance_ID
   * @param MovementQty
   */
  public MMovementLineMA(
      MMovementLine parent, int M_AttributeSetInstance_ID, BigDecimal MovementQty) {
    this(parent.getCtx(), 0, parent.get_TrxName());
    setClientOrg(parent);
    setM_MovementLine_ID(parent.getM_MovementLine_ID());

    //

    setM_AttributeSetInstance_ID(M_AttributeSetInstance_ID);
    setMovementQty(MovementQty);
  } // MMovementLineMA
 /**
  * @param parent
  * @param M_AttributeSetInstance_ID
  * @param MovementQty
  * @param DateMaterialPolicy
  * @param isAutoGenerated
  */
 public MMovementLineMA(
     MMovementLine parent,
     int M_AttributeSetInstance_ID,
     BigDecimal MovementQty,
     Timestamp DateMaterialPolicy,
     boolean isAutoGenerated) {
   this(parent.getCtx(), 0, parent.get_TrxName());
   setClientOrg(parent);
   setM_MovementLine_ID(parent.getM_MovementLine_ID());
   //
   setM_AttributeSetInstance_ID(M_AttributeSetInstance_ID);
   setMovementQty(MovementQty);
   if (DateMaterialPolicy == null) {
     if (M_AttributeSetInstance_ID > 0) {
       MAttributeSetInstance asi =
           new MAttributeSetInstance(
               parent.getCtx(), M_AttributeSetInstance_ID, parent.get_TrxName());
       DateMaterialPolicy = asi.getCreated();
     } else {
       DateMaterialPolicy = parent.getParent().getMovementDate();
     }
   }
   setDateMaterialPolicy(DateMaterialPolicy);
   setIsAutoGenerated(isAutoGenerated);
 } //	MMovementLineMA
 public static MMovementLineMA addOrCreate(
     MMovementLine line,
     int M_AttributeSetInstance_ID,
     BigDecimal MovementQty,
     Timestamp DateMaterialPolicy,
     boolean isAutoGenerated) {
   Query query =
       new Query(
           Env.getCtx(),
           I_M_MovementLineMA.Table_Name,
           "M_MovementLine_ID=? AND M_AttributeSetInstance_ID=? AND DateMaterialPolicy=trunc(cast(? as date))",
           line.get_TrxName());
   MMovementLineMA po =
       query
           .setParameters(
               line.getM_MovementLine_ID(), M_AttributeSetInstance_ID, DateMaterialPolicy)
           .first();
   if (po == null)
     po =
         new MMovementLineMA(
             line, M_AttributeSetInstance_ID, MovementQty, DateMaterialPolicy, isAutoGenerated);
   else po.setMovementQty(po.getMovementQty().add(MovementQty));
   return po;
 }