Beispiel #1
0
        /// <summary>
        /// Obtiene el listado de sucursales para los rangos activos
        /// </summary>
        /// <param name="comp"></param>
        /// <returns></returns>
        public List <string> ObtenerSucursales()
        {
            IRecordset    recSet          = null;
            string        consulta        = "";
            List <string> listaSucursales = new List <string>();

            try
            {
                //Obtener objeto estandar de record set
                recSet = ProcConexion.Comp.GetBusinessObject(BoObjectTypes.BoRecordset);

                //Establecer consulta
                consulta = "SELECT DISTINCT(U_Sucursal) FROM [@TFECAE] WHERE U_ValDesde <= GETDATE() AND U_ValHasta >= GETDATE()";

                //Ejecutar consulta
                recSet.DoQuery(consulta);

                recSet.MoveFirst();

                for (int i = 0; i < recSet.RecordCount; i++)
                {
                    listaSucursales.Add(recSet.Fields.Item("U_Sucursal").Value + "");
                    recSet.MoveNext();
                }
            }
            catch (Exception)
            {
                listaSucursales = null;
            }
            finally
            {
                if (recSet != null)
                {
                    //Liberar memoria utilizada por el objeto record set
                    System.Runtime.InteropServices.Marshal.ReleaseComObject(recSet);
                    System.GC.Collect();
                }
            }
            return(listaSucursales);
        }
Beispiel #2
0
        public static IEnumerable <TDestiny> AsEnumerable <TDestiny>(IRecordset source, bool useXmlAttributes = true)
            where TDestiny : new()
        {
            if (source == null)
            {
                throw new ArgumentNullException("source");
            }

            if (source.RecordCount == 0)
            {
                yield break;
            }

            source.MoveFirst();

            var fnMemberInit = GetMemberInit <TDestiny>(source.Fields, useXmlAttributes).Compile();

            while (!source.EoF)
            {
                yield return(fnMemberInit(source.Fields));

                source.MoveNext();
            }
        }