public List <DatoExtraccion> ObtenerListaElementos(List <ConsultaDinamica> queryes) { string ConnStr = QueryHandler.ConeccionBBDD; List <DatoExtraccion> datos = new List <DatoExtraccion>(); List <String> lista = new List <String>(); using (OracleConnection connection = new OracleConnection(ConnStr)) { OracleCommand cmd = null; connection.Open(); foreach (var q in queryes) { DatoExtraccion Tabla = new DatoExtraccion(); cmd = new OracleCommand(q.Query, connection); foreach (var p in q.Parametros.Keys) { cmd.Parameters.Add(new OracleParameter(p, q.Parametros[p])); } Tabla.Tabla = q.Tabla; using (var reader = cmd.ExecuteReader()) { if (reader.Read()) { foreach (var c in q.MeotodosColumnas) { if (Tabla.Columnas.Keys.Any(x => x.Equals(c.Key))) { Tabla.Columnas[c.Key].Add(ReaderHandler.Read(reader, c.Key, c.Value)); } else { Tabla.Columnas.Add(c.Key, new List <string>() { ReaderHandler.Read(reader, c.Key, c.Value) }); } } } reader.Close(); } Tabla.Columnas = (new QueryTablas(Tabla)).DatosProcesados; datos.Add(Tabla); } } return(datos); }
public QueryTablas(DatoExtraccion datos) { switch (datos.Tabla) { case "Personas": this.DatosProcesados = Personas(datos.Columnas); break; case "Contratos": this.DatosProcesados = Contratos(datos.Columnas); break; case "Servicios": this.DatosProcesados = Servicios(datos.Columnas); break; case "Lecturas": this.DatosProcesados = Lecturas(datos.Columnas); break; case "Ordenativos": this.DatosProcesados = Ordenativos(datos.Columnas); break; case "Potencias": this.DatosProcesados = Potencias(datos.Columnas); break; case "StockEquipos": this.DatosProcesados = StockEquipos(datos.Columnas); break; case "Sucursales": this.DatosProcesados = Sucursales(datos.Columnas); break; case "Bancos": this.DatosProcesados = Bancos(datos.Columnas); break; case "Cargos": this.DatosProcesados = Cargos(datos.Columnas); break; case "TiposIVA": this.DatosProcesados = TiposIVA(datos.Columnas); break; case "Tarifas": this.DatosProcesados = Tarifas(datos.Columnas); break; case "Documentos": this.DatosProcesados = Documentos(datos.Columnas); break; case "TotalesTramites": this.DatosProcesados = TotalesTramites(datos.Columnas); break; case "Usuarios": this.DatosProcesados = Usuarios(datos.Columnas); break; case "PrsNumOri": this.DatosProcesados = PrsNumOri(datos.Columnas); break; default: this.DatosProcesados = datos.Columnas; break; } }