/// <summary>
        /// Ejecuta procedimiento
        /// </summary>
        /// <param name="item"></param>
        /// <returns></returns>
        public bool Update(ClasificacionXValorProcesoInfo item)
        {
            try
            {
                return(module.Update(item));
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(string.Format("NIVI Error: {0} , NameSpace: {1}, Clase: {2}, Metodo: {3} ", ex.Message, MethodBase.GetCurrentMethod().DeclaringType.Namespace, MethodBase.GetCurrentMethod().DeclaringType.Name, MethodBase.GetCurrentMethod().Name));

                return(false);
            }
        }
        /// <summary>
        /// Traer promedios por campaña primera division
        /// </summary>
        /// <returns></returns>
        public ClasificacionXValorProcesoInfo ListXPrimerCuadrante(ClasificacionXValorProcesoInfo item)
        {
            db.SetParameterValue(commandClasificacionXValorProceso, "i_operation", 'S');
            db.SetParameterValue(commandClasificacionXValorProceso, "i_option", 'C');
            db.SetParameterValue(commandClasificacionXValorProceso, "i_campana", item.Campana);
            db.SetParameterValue(commandClasificacionXValorProceso, "i_reg_codregional", item.Codgereg);
            db.SetParameterValue(commandClasificacionXValorProceso, "i_zona", item.Zona);


            IDataReader dr = null;

            ClasificacionXValorProcesoInfo m = null;

            try
            {
                dr = db.ExecuteReader(commandClasificacionXValorProceso);

                if (dr.Read())
                {
                    m = Factory.GetClasificacionXValorProcesoInfo(dr);
                }
                else
                {
                    m = null;
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(string.Format("NIVI Error: {0} , NameSpace: {1}, Clase: {2}, Metodo: {3} ", ex.Message, MethodBase.GetCurrentMethod().DeclaringType.Namespace, MethodBase.GetCurrentMethod().DeclaringType.Name, MethodBase.GetCurrentMethod().Name));

                bool rethrow = ExceptionPolicy.HandleException(ex, "DataAccess Policy");

                if (rethrow)
                {
                    throw;
                }
            }
            finally
            {
                if (dr != null)
                {
                    dr.Close();
                }
            }

            return(m);
        }
        /// <summary>
        /// Proceso de clasificacion de empresarias una campaña determinada
        /// </summary>
        /// <param name="item"></param>
        /// <returns></returns>

        public bool Update(ClasificacionXValorProcesoInfo item)
        {
            bool transOk = false;

            IDataReader dr = null;

            try
            {
                db.SetParameterValue(commandClasificacionXValorProceso, "i_operation", 'U');
                db.SetParameterValue(commandClasificacionXValorProceso, "i_option", 'A');

                db.SetParameterValue(commandClasificacionXValorProceso, "i_campana", item.Campana);

                commandClasificacionXValorProceso.CommandTimeout = 600;

                dr = db.ExecuteReader(commandClasificacionXValorProceso);

                transOk = true;
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(string.Format("NIVI Error: {0} , NameSpace: {1}, Clase: {2}, Metodo: {3} ", ex.Message, MethodBase.GetCurrentMethod().DeclaringType.Namespace, MethodBase.GetCurrentMethod().DeclaringType.Name, MethodBase.GetCurrentMethod().Name));

                bool rethrow = ExceptionPolicy.HandleException(ex, "DataAccess Policy");

                if (rethrow)
                {
                    throw;
                }
            }
            finally
            {
                if (dr != null)
                {
                    dr.Close();
                }
            }

            return(transOk);
        }
 /// <summary>
 /// Trae todas las empresarias filtradas por los valores de frecuencia y orden en caso de que se repitan dichos valores
 /// </summary>
 /// <param name="item"></param>
 /// <returns></returns>
 public List <ClasificacionXValorProcesoInfo> ListConFiltroEstados(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListConFiltroEstados(item));
 }
 /// <summary>
 /// Trae orden promedio Maximo
 /// </summary>
 /// <returns></returns>
 public ClasificacionXValorProcesoInfo ListXOrdenPromedioMaximo(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListXOrdenPromedioMaximo(item));
 }
 /// <summary>
 /// Traer promedios por campaña segunda division
 /// </summary>
 /// <returns></returns>
 public ClasificacionXValorProcesoInfo ListXSegundoCuadrante(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListXSegundoCuadrante(item));
 }
 /// <summary>
 /// Traer las empresarias por campaña y nit
 /// </summary>
 /// <returns></returns>
 public ClasificacionXValorProcesoInfo ListXNit(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListXNit(item));
 }
 /// <summary>
 /// Traer todas las empresarias por campaña
 /// </summary>
 /// <returns></returns>
 public List <ClasificacionXValorProcesoInfo> List(ClasificacionXValorProcesoInfo item)
 {
     return(module.List(item));
 }
 /// <summary>
 /// Trae cantidades de empresarias por clasificacion filtradas por region y zona
 /// </summary>
 /// <returns></returns>
 public ClasificacionXValorProcesoInfo ListXNitUltimaCampana(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListXNitUltimaCampana(item));
 }
 /// <summary>
 /// Trae cantidades de empresarias por clasificacion filtradas por region y zona
 /// </summary>
 /// <param name="item"></param>
 /// <returns></returns>
 public List <ClasificacionXValorProcesoInfo> ListCantidadesConFiltro(ClasificacionXValorProcesoInfo item)
 {
     return(module.ListCantidadesConFiltro(item));
 }