/// <summary> /// Create Confirmation or return existing one /// </summary> /// <param name="move">movement</param> /// <param name="checkExisting">if false, new confirmation is created</param> /// <returns>Confirmation</returns> public static MMovementConfirm Create(MMovement move, Boolean checkExisting) { if (checkExisting) { MMovementConfirm[] confirmations = move.GetConfirmations(false); for (int i = 0; i < confirmations.Length; i++) { MMovementConfirm confirm1 = confirmations[i]; if (confirm1 != null) { return(confirm1); } } } MMovementConfirm confirm = new MMovementConfirm(move); confirm.Save(move.Get_TrxName()); MMovementLine[] moveLines = move.GetLines(false); for (int i = 0; i < moveLines.Length; i++) { MMovementLine mLine = moveLines[i]; MMovementLineConfirm cLine = new MMovementLineConfirm(confirm); cLine.SetMovementLine(mLine); cLine.Save(move.Get_TrxName()); } return(confirm); }
/// <summary> /// Create Confirmation or return existing one /// </summary> /// <param name="move">movement</param> /// <param name="checkExisting">if false, new confirmation is created</param> /// <returns>Confirmation</returns> public static MMovementConfirm Create(MMovement move, Boolean checkExisting) { if (checkExisting) { MMovementConfirm[] confirmations = move.GetConfirmations(false); for (int i = 0; i < confirmations.Length; i++) { MMovementConfirm confirm1 = confirmations[i]; if (confirm1 != null) { return(confirm1); } } } MMovementConfirm confirm = new MMovementConfirm(move); confirm.Save(move.Get_TrxName()); MMovementLine[] moveLines = move.GetLines(false); for (int i = 0; i < moveLines.Length; i++) { MMovementLine mLine = moveLines[i]; MMovementLineConfirm cLine = new MMovementLineConfirm(confirm); cLine.SetMovementLine(mLine); // setting QtyEntered in Target Qty on Confirmation Line cLine.SetTargetQty(mLine.GetQtyEntered()); cLine.SetConfirmedQty(mLine.GetQtyEntered()); cLine.Save(move.Get_TrxName()); } // Change By Arpit Rai on 24th August,2017 To Check if VA Material Quality Control Module exists or not if (Util.GetValueOfInt(DB.ExecuteScalar("SELECT COUNT(*) FROM AD_ModuleInfo WHERE Prefix='VA010_'", null, null)) > 0) { CreateConfirmParameters(move, confirm.GetM_MovementConfirm_ID(), confirm.GetCtx()); } return(confirm); }
/// <summary> /// Parent constructor /// </summary> /// <param name="parent">parent</param> public MMovementLine(MMovement parent) : this(parent.GetCtx(), 0, parent.Get_TrxName()) { SetClientOrg(parent); SetM_Movement_ID(parent.GetM_Movement_ID()); }
/// <summary> /// Parent constructor /// </summary> /// <param name="parent">parent</param> public MMovementConfirm(MMovement move) : this(move.GetCtx(), 0, move.Get_TrxName()) { SetClientOrg(move); SetM_Movement_ID(move.GetM_Movement_ID()); }
// Change By Arpit to Create Parameters on Ship/Reciept Confirm Quality Control Tab 24th Aug,2017 public static void CreateConfirmParameters(MMovement move, int M_MoveConfirm_ID, Ctx ctx) { String _Sql = @" SELECT movln.M_MovementLine_ID, mlnconf.M_MovementLineConfirm_ID, movln.M_Product_ID , pr.VA010_QualityPlan_ID , movln.MovementQty FROM M_MovementLine movln INNER JOIN M_Product pr ON (movln.M_Product_ID =pr.M_Product_ID) INNER JOIN m_movementlineconfirm mlnconf ON (movln.m_movementline_id=mlnconf.m_movementline_id) inner join m_movementconfirm mconf on (mlnconf.m_movementconfirm_ID= mconf.m_movementconfirm_id) WHERE movln.M_Movement_ID =" + move.GetM_Movement_ID() + " ORDER BY Line"; //" ORDER BY movln.M_Product_ID, pr.VA010_QualityPlan_ID ASC, movln.MovementQty, Line"; DataSet ds = new DataSet(); //int _currentPlanQlty_ID = 0, CurrentLoopQty = 0, currProduct_ID = 0; int _currentPlanQlty_ID = 0, CurrentLoopQty = 0; List <int> CurrentLoopProduct = new List <int>(); List <int> ProductQty = new List <int>(); List <int> MoveConfirmLine_ID = new List <int>(); try { ds = DB.ExecuteDataset(_Sql, null, move.Get_TrxName()); if (ds != null && ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { //if (_currentPlanQlty_ID == 0) //{ _currentPlanQlty_ID = Util.GetValueOfInt(ds.Tables[0].Rows[i]["VA010_QualityPlan_ID"]); //} //currProduct_ID = Util.GetValueOfInt(ds.Tables[0].Rows[i]["M_Product_ID"]); CurrentLoopProduct.Add(Util.GetValueOfInt(ds.Tables[0].Rows[i]["M_Product_ID"])); ProductQty.Add(Util.GetValueOfInt(ds.Tables[0].Rows[i]["MovementQty"])); CurrentLoopQty = Util.GetValueOfInt(ds.Tables[0].Rows[i]["MovementQty"]); MoveConfirmLine_ID.Add(Util.GetValueOfInt(ds.Tables[0].Rows[i]["M_MovementLineConfirm_ID"])); //if (i < ds.Tables[0].Rows.Count - 1) //{ // if (_currentPlanQlty_ID == Util.GetValueOfInt(ds.Tables[0].Rows[i + 1]["VA010_QualityPlan_ID"]) // && currProduct_ID == Util.GetValueOfInt(ds.Tables[0].Rows[i + 1]["M_Product_ID"])) // { // continue; // } // else // { // CreateParameters(CurrentLoopProduct, ProductQty, M_MoveConfirm_ID, _currentPlanQlty_ID, CurrentLoopQty, MoveConfirmLine_ID, ctx, move.Get_TrxName()); // CurrentLoopProduct.Clear(); // ProductQty.Clear(); // _currentPlanQlty_ID = 0; // CurrentLoopQty = 0; // MoveConfirmLine_ID.Clear(); // } //} //else //{ CreateParameters(CurrentLoopProduct, ProductQty, M_MoveConfirm_ID, _currentPlanQlty_ID, CurrentLoopQty, MoveConfirmLine_ID, ctx, move.Get_TrxName()); CurrentLoopProduct.Clear(); ProductQty.Clear(); _currentPlanQlty_ID = 0; CurrentLoopQty = 0; MoveConfirmLine_ID.Clear(); //} } } } catch (Exception ex) { _log.Log(Level.SEVERE, _Sql, ex); } finally { ds.Dispose(); CurrentLoopProduct = ProductQty = MoveConfirmLine_ID = null; _currentPlanQlty_ID = CurrentLoopQty = 0; _Sql = String.Empty; } }