Ejemplo n.º 1
0
        private DateTime?Procesar(ParametrosLectura param, DataTable tabla, DateTime?fecha, string linea, ResultadoLectura resultado)
        {
            try
            {
                string[] datos = linea.Split(',');
                UtilitarioLectura.LimpiarComillas(datos);
                if (datos.Length >= 5 && !string.IsNullOrEmpty(datos[0].Trim()))
                {
                    if (fecha == null)
                    {
                        string strFecha = datos[0].Substring(0, datos[0].LastIndexOf(' '));
                        fecha = DateTime.ParseExact(strFecha, "M/d/yy", System.Threading.Thread.CurrentThread.CurrentCulture);
                    }
                    string strHora = GetHora(datos[0]);
                    if (strHora == "24:00")
                    {
                        strHora = "00:00";
                        fecha   = fecha.Value.AddDays(1);
                    }
                    TimeSpan        hora = TimeSpan.Parse(strHora);
                    RegistroLectura reg  = RegistroLectura.GetRegistroLectura(fecha.Value, hora);
                    resultado.Registros.Add(reg);
                    foreach (MC_RPuntoMedicionFormatoDetalle r in param.DetalleMagElec)
                    {
                        int numColumna = r.GetNumColumna();
                        if (numColumna >= 0)
                        {
                            DataRow row = tabla.NewRow();
                            row["Fecha"]       = reg.Fecha.Date; //fecha.Date;
                            row["Hora"]        = reg.Hora;       //hora;
                            row["Canal"]       = r.Canal;
                            row["CodInfCanal"] = r.FkCodMagnitudElec;
                            double?valor = GetDouble(datos[numColumna]);
                            if (valor == null)
                            {
                                row["Valor"] = System.DBNull.Value;
                            }
                            else
                            {
                                row["Valor"] = valor.Value;
                            }
                            tabla.Rows.Add(row);

                            reg.AdicionarItem(r.FkCodMagnitudElec, valor);
                            reg.AdicionarRow(row);
                        }
                    }
                }
            }
            catch (Exception)
            {
            }
            return(fecha);
        }
Ejemplo n.º 2
0
        private void Procesar(ParametrosLectura param, DataTable tabla, string linea, ResultadoLectura resultado)
        {
            try
            {
                string[] datos = linea.Split(',');
                UtilitarioLectura.LimpiarComillas(datos);
                if (datos.Length > 5 && !string.IsNullOrEmpty(datos[0].Trim()))
                {
                    DateTime        fecha = DateTime.ParseExact(datos[2], "MM-dd-yy", System.Threading.Thread.CurrentThread.CurrentCulture);
                    TimeSpan        hora  = TimeSpan.Parse(datos[3]);
                    RegistroLectura reg   = RegistroLectura.GetRegistroLectura(fecha, hora);
                    resultado.Registros.Add(reg);
                    foreach (MC_RPuntoMedicionFormatoDetalle r in param.DetalleMagElec)
                    {
                        int numColumna = r.GetNumColumna();
                        if (numColumna >= 0)
                        {
                            DataRow row = tabla.NewRow();
                            row["Fecha"]       = reg.Fecha.Date; //fecha.Date;
                            row["Hora"]        = reg.Hora;       //hora;
                            row["Canal"]       = r.Canal;
                            row["CodInfCanal"] = r.FkCodMagnitudElec;
                            double?valor = GetDouble(datos[numColumna]);
                            if (valor == null)
                            {
                                row["Valor"] = System.DBNull.Value;
                            }
                            else
                            {
                                row["Valor"] = valor.Value;
                            }
                            tabla.Rows.Add(row);

                            reg.AdicionarItem(r.FkCodMagnitudElec, valor);
                            reg.AdicionarRow(row);
                        }
                    }
                }
            }
            catch (Exception)
            {
                int i = 0;
            }
        }
Ejemplo n.º 3
0
        private void Procesar(ParametrosLectura param, DataTable tabla, string linea, ResultadoLectura resultado)
        {
            if (string.IsNullOrEmpty(linea))
            {
                return;
            }

            string[] datos = linea.Split(',');
            UtilitarioLectura.LimpiarComillas(datos);
            DateTime fecha = GetFecha(datos[0]);
            TimeSpan hora  = fecha.TimeOfDay;

            RegistroLectura reg = RegistroLectura.GetRegistroLectura(fecha, hora);

            resultado.Registros.Add(reg);
            foreach (MC_RPuntoMedicionFormatoDetalle r in param.DetalleMagElec)
            {
                int numColumna = r.GetNumColumna();

                if (numColumna >= 0)
                {
                    DataRow row = tabla.NewRow();
                    row["Fecha"]       = reg.Fecha.Date; //fecha.Date;
                    row["Hora"]        = reg.Hora;       //hora;
                    row["Canal"]       = r.Canal;
                    row["CodInfCanal"] = r.FkCodMagnitudElec;
                    double?valor = GetDouble(datos[numColumna]);
                    if (valor == null)
                    {
                        row["Valor"] = System.DBNull.Value;
                    }
                    else
                    {
                        row["Valor"] = valor.Value;
                    }
                    tabla.Rows.Add(row);

                    reg.AdicionarItem(r.FkCodMagnitudElec, valor);
                    reg.AdicionarRow(row);
                }
            }
        }