/** * Get Default MBPGroup * @param ctx context * @return MBPGroup */ public static MBPGroup GetDefault(Ctx ctx) { int AD_Client_ID = ctx.GetAD_Client_ID(); int key = AD_Client_ID; MBPGroup retValue = (MBPGroup)_cacheDefault[key]; if (retValue != null) { return(retValue); } DataTable dt = null; String sql = "SELECT * FROM C_BP_Group g " + "WHERE IsDefault='Y' AND AD_Client_ID= " + AD_Client_ID + " ORDER BY IsActive DESC"; IDataReader idr = null; try { idr = DataBase.DB.ExecuteReader(sql, null, null); dt = new DataTable(); dt.Load(idr); idr.Close(); foreach (DataRow dr in dt.Rows) { retValue = new MBPGroup(ctx, dr, null); if (retValue.Get_ID() != 0) { _cacheDefault.Add(key, retValue); } break; } } catch (Exception e) { if (idr != null) { idr.Close(); } _log.Log(Level.SEVERE, sql, e); } finally { dt = null; } if (retValue == null) { _log.Warning("No Default BP Group for AD_Client_ID=" + AD_Client_ID); } return(retValue); }
/** * Get MBPGroup from Cache * @param ctx context * @param C_BP_Group_ID id * @return MBPGroup */ public static MBPGroup Get(Ctx ctx, int C_BP_Group_ID) { int key = C_BP_Group_ID; MBPGroup retValue = (MBPGroup)_cache[key]; if (retValue != null) { return(retValue); } retValue = new MBPGroup(ctx, C_BP_Group_ID, null); if (retValue.Get_ID() != 0) { _cache.Add(key, retValue); } return(retValue); }
/** * Get MBPGroup from Business Partner * @param ctx context * @param C_BPartner_ID business partner id * @return MBPGroup */ public static MBPGroup GetOfBPartner(Ctx ctx, int C_BPartner_ID) { MBPGroup retValue = null; DataTable dt = null; String sql = "SELECT * FROM C_BP_Group g " + "WHERE EXISTS (SELECT * FROM C_BPartner p " + "WHERE p.C_BPartner_ID=" + C_BPartner_ID + " AND p.C_BP_Group_ID=g.C_BP_Group_ID)"; IDataReader idr = null; try { idr = DataBase.DB.ExecuteReader(sql, null, null); dt = new DataTable(); dt.Load(idr); idr.Close(); foreach (DataRow dr in dt.Rows) { retValue = new MBPGroup(ctx, dr, null); int key = retValue.GetC_BP_Group_ID(); if (retValue.Get_ID() != 0) { _cache.Add(key, retValue); } } } catch (Exception e) { if (idr != null) { idr.Close(); } _log.Log(Level.SEVERE, sql, e); } finally { dt = null; } return(retValue); }