/** * Parent Constructor (old) * @param product parent * @param C_AcctSchema_ID accounting schema */ public MProductCosting(MProduct product, int C_AcctSchema_ID) : base(product.GetCtx(), 0, product.Get_TrxName()) { SetClientOrg(product); SetM_Product_ID(product.GetM_Product_ID()); SetC_AcctSchema_ID(C_AcctSchema_ID); }
public static MCostForeignCurrency Get(MProduct product, int M_AttributeSetInstance_ID, int AD_Org_ID, int M_CostElement_ID, int C_BPartner_ID, int C_Currency_ID) { MCostForeignCurrency foreignCurrency = null; String sql = "SELECT * " + "FROM M_Cost_ForeignCurrency c " + "WHERE AD_Client_ID=" + product.GetAD_Client_ID() + " AND AD_Org_ID=" + AD_Org_ID + " AND M_Product_ID=" + product.GetM_Product_ID() + " AND NVL(M_AttributeSetInstance_ID , 0) =" + M_AttributeSetInstance_ID + " AND M_CostElement_ID=" + M_CostElement_ID + " AND C_BPartner_ID = " + C_BPartner_ID + " AND C_Currency_ID = " + C_Currency_ID; DataTable dt = null; IDataReader idr = null; try { idr = DB.ExecuteReader(sql, null, product.Get_TrxName()); dt = new DataTable(); dt.Load(idr); idr.Close(); foreach (DataRow dr in dt.Rows) { foreignCurrency = new MCostForeignCurrency(product.GetCtx(), dr, product.Get_TrxName()); } } catch (Exception e) { if (idr != null) { idr.Close(); } _log.Log(Level.SEVERE, sql, e); } finally { dt = null; } // New if (foreignCurrency == null) { foreignCurrency = new MCostForeignCurrency(AD_Org_ID, product, M_AttributeSetInstance_ID, M_CostElement_ID, C_BPartner_ID, C_Currency_ID); } return(foreignCurrency); }
/// <summary> /// Parent Constructor /// </summary> /// <param name="parent"></param> public MUOMConversion(MProduct parent) : this(parent.GetCtx(), 0, parent.Get_TrxName()) { SetClientOrg(parent); SetC_UOM_ID(parent.GetC_UOM_ID()); SetM_Product_ID(parent.GetM_Product_ID()); SetC_UOM_To_ID(parent.GetC_UOM_ID()); SetMultiplyRate(Env.ONE); SetDivideRate(Env.ONE); }
/** * Get array of active Locators for Product and warehouse ordered by priority * @param product product * @param M_Warehouse_ID wh * @return product locators */ public static MLocator[] GetLocators(MProduct product, int M_Warehouse_ID) { List <MLocator> list = new List <MLocator>(); String sql = "SELECT * FROM M_Locator l " + "WHERE l.IsActive='Y'" + " AND (M_Locator_ID IN (SELECT M_Locator_ID FROM M_Product WHERE M_Product_ID=" + product.GetM_Product_ID() + ")" + " OR M_Locator_ID IN (SELECT M_Locator_ID FROM M_ProductLocator WHERE M_Product_ID=" + product.GetM_Product_ID() + " AND IsActive='Y'))" + " AND M_Warehouse_ID=" + M_Warehouse_ID + "ORDER BY PriorityNo DESC"; DataTable dt = null; IDataReader idr = null; try { idr = DataBase.DB.ExecuteReader(sql, null, product.Get_TrxName()); dt = new DataTable(); dt.Load(idr); idr.Close(); foreach (DataRow dr in dt.Rows) { list.Add(new MLocator(product.GetCtx(), dr, product.Get_TrxName())); } } catch (Exception e) { if (idr != null) { idr.Close(); } _log.Log(Level.SEVERE, sql, e); } finally { if (idr != null) { idr.Close(); } dt = null; } MLocator[] retValue = new MLocator[list.Count]; retValue = list.ToArray(); return(retValue); }
public MCostForeignCurrency(int AD_Org_ID, MProduct product, int M_AttributeSetInstance_ID, int M_CostElement_ID, int C_BPartner_ID, int C_Currency_ID) : this(product.GetCtx(), 0, product.Get_TrxName()) { SetClientOrg(product.GetAD_Client_ID(), AD_Org_ID); SetM_Product_ID(product.GetM_Product_ID()); SetM_AttributeSetInstance_ID(M_AttributeSetInstance_ID); SetM_CostElement_ID(M_CostElement_ID); SetC_BPartner_ID(C_BPartner_ID); SetC_Currency_ID(C_Currency_ID); }
/** * Get First M_Locator_ID for product and Warehouse ordered by priority of Locator * @param product product * @param M_Warehouse_ID wh * @return locator or 0 if none */ public static int GetFirstM_Locator_ID(MProduct product, int M_Warehouse_ID) { if (product == null || M_Warehouse_ID == 0) { return(0); } // int M_Locator_ID = 0; String sql = "SELECT M_Locator_ID FROM M_Locator l " + "WHERE l.IsActive='Y'" + " AND (M_Locator_ID IN (SELECT M_Locator_ID FROM M_Product WHERE M_Product_ID=" + product.GetM_Product_ID() + ")" + " OR M_Locator_ID IN (SELECT M_Locator_ID FROM M_ProductLocator WHERE M_Product_ID=" + product.GetM_Product_ID() + " AND IsActive='Y'))" + " AND M_Warehouse_ID= " + M_Warehouse_ID + "ORDER BY PriorityNo DESC"; DataTable dt = null; IDataReader idr = null; try { idr = DataBase.DB.ExecuteReader(sql, null, product.Get_TrxName()); dt = new DataTable(); dt.Load(idr); idr.Close(); foreach (DataRow dr in dt.Rows) { M_Locator_ID = Convert.ToInt32(dr[0]);// rs.getInt(1); } } catch (Exception e) { if (idr != null) { idr.Close(); } _log.Log(Level.SEVERE, sql, e); } finally { if (idr != null) { idr.Close(); } dt = null; } return(M_Locator_ID); }
/** * Get BOM Lines for Product * @param product product * @return array of BOMs */ public static MProductBOM[] GetBOMLines(MProduct product) { return(GetBOMLines(product.GetCtx(), product.GetM_Product_ID(), product.Get_TrxName())); }