public TablaDeDatos Ejecutar(string procedimiento, int command_timeout = 30) { AbrirBD(); var data_adapter = new SqlDataAdapter(); var data_table = new TablaDeDatos(); try { data_adapter.SelectCommand = CrearComando(procedimiento, command_timeout); data_adapter.Fill(data_table); return(data_table); } catch (SqlException e) { throw e; } catch (Exception e) { throw e; } finally { CerrarBD(); data_adapter.Dispose(); } }
private static List <Persona> GetPersonasDeTablaDeDatos(TablaDeDatos tablaDatos) { var personas = new List <Persona>(); if (tablaDatos.Rows.Count > 0) { tablaDatos.Rows.ForEach(row => { var legajo = ""; if (!(row.GetObject("Legajo") is DBNull)) { legajo = row.GetInt("Legajo").ToString(); } personas.Add(new Persona { Id = row.GetInt("Id"), Nombre = row.GetString("Nombre"), Apellido = row.GetString("Apellido"), Legajo = legajo, Documento = row.GetInt("Nro_Documento"), IdImagen = row.GetInt("IdImagen", -1), BajaLegajo = row.GetSmallintAsInt("Motivo_Baja", -1) >= 0 }); }); } return(personas); }
public List <AcumuladorAsistencia> GetAsistenciasFromTabla(TablaDeDatos tablaAsistencias) { var repo_curso = new RepositorioDeCursos(this.conexion_bd); List <AcumuladorAsistencia> asistencias = new List <AcumuladorAsistencia>(); AcumuladorAsistencia asistencia; int horas_maximas = 0; DateTime fecha; string valor; int id; int id_curso; int id_alumno; tablaAsistencias.Rows.ForEach(row => { id = row.GetInt("Id"); fecha = row.GetDateTime("FechaAsistencia"); valor = row.GetString("Valor"); id_curso = row.GetSmallintAsInt("IdCurso"); id_alumno = row.GetSmallintAsInt("IdAlumno"); horas_maximas = repo_curso.GetCursoById(id_curso).GetHorariosDeCursada().Find(h => h.Dia.Equals(fecha.DayOfWeek)).HorasCatedra; if (valor.Equals("-")) { asistencia = new AsistenciaDiaNoCursado(id, valor, horas_maximas, fecha, id_alumno, id_curso); } else { asistencia = new AsistenciaDiaCursado(id, valor, horas_maximas, fecha, id_alumno, id_curso); } asistencias.Add(asistencia); }); return(asistencias); }
public List <Documento> GetDocumentosFromTabla(TablaDeDatos tablaDocumentos) { List <Documento> documentos = new List <Documento>(); if (tablaDocumentos.Rows.Count > 0) { var un_documento = new Documento(); var area_origen = new Area(); var area_destino = new Area(); tablaDocumentos.Rows.ForEach(row => { if (documentos.FindAll(d => d.Id == row.GetInt("IdDocumento")).Count == 0) { un_documento = new Documento(); un_documento.Id = row.GetInt("IdDocumento"); string sigla; if (row.GetObject("SiglaTipoDocumento") is DBNull) { sigla = ""; } else { sigla = row.GetString("SiglaTipoDocumento"); } un_documento.tipoDeDocumento = new TipoDeDocumentoSICOI(row.GetInt("IdTipoDeDocumento"), row.GetString("DescripcionTipoDocumento"), sigla); un_documento.numero = row.GetString("Numero"); un_documento.extracto = row.GetString("Extracto"); un_documento.fecha = row.GetDateTime("FechaCargaDocumento"); un_documento.comentarios = row.GetString("Comentarios"); if (row.GetObject("FechaDocumento") is DBNull) { un_documento.fecha_documento = null; } else { un_documento.fecha_documento = row.GetDateTime("FechaDocumento"); } if (un_documento.comentarios == null) { un_documento.comentarios = ""; } un_documento.categoriaDeDocumento = new CategoriaDeDocumentoSICOI(row.GetInt("IdCategoriaDeDocumento"), row.GetString("DescripcionCategoria")); un_documento.ticket = row.GetString("Ticket"); documentos.Add(un_documento); } }); } return(documentos); }
public static List <Entidad> GetEntidadesDeTablaDeDatos(TablaDeDatos tablaDatos) { List <Entidad> entidades = new List <Entidad>(); if (tablaDatos.Rows.Count > 0) { tablaDatos.Rows.ForEach(row => entidades.Add(new Entidad(row.GetInt("Id"), row.GetString("Descripcion"))) ); } return(entidades); }
public TablaDeDatos CreateDT(List <Object> entidades, List <ColumnaDeDataTable> columnas, Func <Object, List <Object> > metodo_constructor_de_fila) { var tabla_de_datos = new TablaDeDatos(); //agrego titulos columnas.ForEach(c => { tabla_de_datos.Columns.Add(c.NombreColumna, c.TipoColumna); }); //agrego elementos adadasddad entidades.ForEach(e => { tabla_de_datos.LoadDataRow(metodo_constructor_de_fila.Invoke(e).ToArray(), true); }); return(tabla_de_datos); // return tabla_de_datos; }
public static TablaDeDatos From(string source) { var instance = new TablaDeDatos(); var lines = source.Split(Environment.NewLine.ToArray()).ToList().FindAll(s => s.Trim() != string.Empty).ToArray(); var tabla_valores = CrearFilas(lines); if (tabla_valores.Count == 0) { throw new Exception("Imposible inferir el tipo de dato de la columna"); } CrearColumnas(instance, lines, tabla_valores); tabla_valores.ForEach(row => instance.LoadDataRow(row, true)); return(instance); }
public List <DetallePreguntas> getFormularioDeEvaluacion(int nivel, int evaluado, int evaluacion) { var parametros = new Dictionary <string, object>(); var list_de_pregYRtas = new List <FormEvaluacion> { }; var list_de_pregYRtasRespondidas = new List <DetallePreguntas> { }; var tablaDatos = new TablaDeDatos(); if (evaluacion != 0) { parametros.Add("@id_evaluacion", evaluacion); } parametros.Add("@id_nivel", nivel); tablaDatos = _conexion.Ejecutar("dbo.EVAL_GET_Evaluacion", parametros); FormularioFromTabla(list_de_pregYRtasRespondidas, tablaDatos); return(list_de_pregYRtasRespondidas); }
private List <Estadia> GetEstadiasFromTabla(TablaDeDatos tabla_estadias) { List <Estadia> estadias = new List <Estadia>(); var una_estadia = new Estadia(); var una_provincia = new Provincia(); tabla_estadias.Rows.ForEach(row => { una_estadia.Desde = row.GetDateTime("FechaDesde"); una_estadia.Hasta = row.GetDateTime("Fechahasta"); una_provincia.Id = row.GetSmallintAsInt("IdProvincia"); una_provincia.Nombre = row.GetString("NombreProvincia"); una_estadia.Provincia = una_provincia; una_estadia.Eventuales = (Decimal)row.GetObject("Eventual"); una_estadia.AdicionalParaPasajes = (Decimal)row.GetObject("AdicionalParaPasajes"); una_estadia.CalculadoPorCategoria = (Decimal)row.GetObject("CalculadoPorCategoria"); una_estadia.Motivo = row.GetString("Motivo"); estadias.Add(una_estadia); }); return(estadias); }
public TablaDeDatos Ejecutar(string procedimiento, Dictionary <string, object> parametros, int segundos_timeout = 30) { AbrirBD(); var data_adapter = new SqlDataAdapter(); var data_table = new TablaDeDatos(); try { data_adapter.SelectCommand = CrearComando(procedimiento, parametros, segundos_timeout); //data_adapter.SelectCommand = new SqlCommand //{ // Connection = conexion, // CommandText = procedimiento, // CommandType = CommandType.StoredProcedure //}; //parametros.Keys.ToList().ForEach(k => data_adapter.SelectCommand.Parameters.Add(new SqlParameter(k, parametros[k]))); //this._paramzetros.ForEach(parametro => data_adapter.SelectCommand.Parameters.Add(parametro)); data_adapter.Fill(data_table); return(data_table); } catch (SqlException e) { throw e; } catch (Exception e) { throw e; } finally { CerrarBD(); data_adapter.Dispose(); } }
private static void CrearColumnas(TablaDeDatos instance, string[] lines, List <object[]> tabla_valores) { var nombres_columnas = new List <string>(lines[0].Split('|')).FindAll(s => s.Trim() != string.Empty).Select(s => s.Trim()).ToList(); nombres_columnas.ForEach(nombre_columna => instance.Columns.Add(nombre_columna, TipoInferidoDe(tabla_valores, nombre_columna, nombres_columnas))); }
protected void FormularioFromTabla(List <DetallePreguntas> list_de_pregYRtasRespondidas, TablaDeDatos tablaDatos) { tablaDatos.Rows.ForEach(row => { AddDetallePreguntasA(list_de_pregYRtasRespondidas, row, true); }); }
private List <ComisionDeServicio> GetViaticosFromTabla(TablaDeDatos tablaViaticos) { List <ComisionDeServicio> viaticos = new List <ComisionDeServicio>(); if (tablaViaticos.Rows.Count > 0) { var un_viatico = new ComisionDeServicio(); var un_pasaje = new Pasaje(); var una_estadia = new Estadia(); var una_transicion = new TransicionDeViatico(); var una_zona = new Zona(); tablaViaticos.Rows.ForEach(row => { if (viaticos.FindAll(t => t.Id == row.GetInt("Id")).Count == 0) { un_viatico = new ComisionDeServicio(); un_viatico.Id = row.GetInt("Id"); un_viatico.Baja = row.GetBoolean("Baja"); un_viatico.FechaCreacion = row.GetDateTime("fecha"); un_viatico.AreaCreadora = new Area(); un_viatico.AreaCreadora.Id = row.GetInt("IdAreaCreadora"); un_viatico.AreaCreadora.Nombre = row.GetString("DescripcionAreaCreadora"); un_viatico.AreaSuperior = new Area(); un_viatico.AreaSuperior.Id = row.GetInt("IdAreaCreadora"); un_viatico.AreaSuperior.Nombre = row.GetString("DescripcionAreaCreadora"); un_viatico.Persona = new Persona(); un_viatico.Persona.Nombre = row.GetString("Persona_Nombre"); un_viatico.Persona.Apellido = row.GetString("Persona_Apellido"); un_viatico.Persona.Documento = row.GetInt("Persona_Documento"); un_viatico.Persona.Area = new Area(); un_viatico.Persona.Area.Id = row.GetInt("Persona_Area_Id"); un_viatico.Persona.Area.Nombre = row.GetString("Persona_Area_Descripcion"); un_viatico.Persona.Cuit = row.GetString("Cuil_Persona"); un_viatico.Persona.Legajo = row.GetInt("Legajo_Persona").ToString(); un_viatico.Persona.Telefono = row.GetString("Telefono_Area"); un_viatico.Persona.Categoria = row.GetString("Categoria_Persona"); un_viatico.Persona.Nivel = row.GetString("Nivel_Funcion"); un_viatico.Persona.Grado = row.GetString("Grado_Rango"); //FC:agrego el estado mockeado por ahora para poder filtrar // viaticos.Add(un_viatico); un_pasaje = new Pasaje(); una_estadia = new Estadia(); una_transicion = new TransicionDeViatico(); } if (!(row.GetObject("Estadia_Id") is DBNull)) { if (un_viatico.Estadias.FindAll(t => t.Id == row.GetInt("Estadia_Id")).Count == 0) { una_estadia = new Estadia(); una_zona = new Zona(row.GetSmallintAsInt("Id_Zona"), row.GetString("Nombre_Zona")); una_estadia.Id = row.GetInt("Estadia_Id"); una_estadia.Desde = row.GetDateTime("Estadia_Desde"); una_estadia.Hasta = row.GetDateTime("Estadia_Hasta"); una_estadia.Provincia = new Provincia(); una_estadia.Provincia.Id = row.GetSmallintAsInt("Estadia_Provincia_Id"); una_estadia.Provincia.Nombre = row.GetString("Estadia_Provincia_Nombre"); una_estadia.Provincia.Zona = una_zona; una_estadia.Eventuales = Decimal.Parse(row.GetObject("Estadia_Eventuales").ToString()); // GetObject("Estadia_Eventuales"); una_estadia.AdicionalParaPasajes = Decimal.Parse(row.GetObject("Estadia_AdicionalParaPasajes").ToString()); //GetObject("Estadia_AdicionalParaPasajes"); una_estadia.CalculadoPorCategoria = Decimal.Parse(row.GetObject("Estadia_CalculadoPorCategoria").ToString()); //GetObject("Estadia_CalculadoPorCategoria"); una_estadia.Motivo = row.GetString("Estadia_Motivo"); una_estadia.Persona = un_viatico.Persona; un_viatico.Estadias.Add(una_estadia); } } if (!(row.GetObject("Pasaje_Id") is DBNull)) { if (un_viatico.Pasajes.FindAll(t => t.Id == row.GetInt("Pasaje_Id")).Count == 0) { un_pasaje = new Pasaje(); un_pasaje.Id = row.GetInt("Pasaje_Id"); un_pasaje.Origen = new Localidad(); un_pasaje.Origen.Id = row.GetInt("Pasaje_LocalidadOrigen_Id"); un_pasaje.Origen.Nombre = row.GetString("Pasaje_LocalidadOrigen_Nombre"); un_pasaje.Destino = new Localidad(); un_pasaje.Destino.Id = row.GetInt("Pasaje_LocalidadDestino_Id"); un_pasaje.Destino.Nombre = row.GetString("Pasaje_LocalidadDestino_Nombre"); un_pasaje.FechaDeViaje = row.GetDateTime("Pasaje_FechaDeViaje"); un_pasaje.MedioDeTransporte = new MedioDeTransporte(); un_pasaje.MedioDeTransporte.Id = row.GetSmallintAsInt("Pasaje_MedioDeTransporte_Id"); un_pasaje.MedioDeTransporte.Nombre = row.GetString("Pasaje_MedioDeTransporte_Nombre"); un_pasaje.MedioDePago = new MedioDePago(); un_pasaje.MedioDePago.Id = row.GetSmallintAsInt("Pasaje_MedioDePago_Id"); un_pasaje.MedioDePago.Nombre = row.GetString("Pasaje_MedioDePago_Nombre"); un_pasaje.Precio = Decimal.Parse(row.GetObject("Pasaje_Precio").ToString());//.GetObject("Pasaje_Precio"); un_viatico.Pasajes.Add(un_pasaje); } } if (!(row.GetObject("Transicion_Id") is DBNull)) { if (un_viatico.TransicionesRealizadas.FindAll(t => t.Id == row.GetInt("Transicion_Id")).Count == 0) { var id_transicion = row.GetInt("Transicion_Id"); var id_area_origen = row.GetInt("Transicion_AreaOrigen_Id"); var nombre_area_origen = row.GetString("Transicion_AreaOrigen_Descripcion"); var area_origen = new Area(id_area_origen, nombre_area_origen); var responsableAreaOrigen = new Persona(); responsableAreaOrigen.Nombre = row.GetString("Transicion_AreaOrigen_Responsable_Nombre"); responsableAreaOrigen.Apellido = row.GetString("Transicion_AreaOrigen_Responsable_Apellido"); responsableAreaOrigen.Documento = row.GetInt("Transicion_AreaOrigen_Responsable_Documento"); area_origen.Responsables = new List <Persona>(); area_origen.Responsables.Add(responsableAreaOrigen); var id_area_destino = row.GetInt("Transicion_AreaDestino_Id"); var nombre_area_destino = row.GetString("Transicion_AreaDestino_Descripcion"); var area_destino = new Area(id_area_destino, nombre_area_destino); var responsableAreaDestino = new Persona(); responsableAreaDestino.Nombre = row.GetString("Transicion_AreaDestino_Responsable_Nombre"); responsableAreaDestino.Apellido = row.GetString("Transicion_AreaDestino_Responsable_Apellido"); responsableAreaDestino.Documento = row.GetInt("Transicion_AreaDestino_Responsable_Documento"); area_destino.Responsables = new List <Persona>(); area_destino.Responsables.Add(responsableAreaDestino); var repositorioAcciones = new RepositorioDeAccionesDeTransicion(); var accion = repositorioAcciones.GetAccionDeTransicionById(row.GetInt("Transicion_Id_Accion")); var fecha = row.GetDateTime("Transicion_Fecha"); var comentario = row.GetString("Transicion_Comentario"); if (comentario == null) { comentario = ""; } una_transicion = new TransicionDeViatico(id_transicion, area_origen, area_destino, accion, fecha, comentario); un_viatico.TransicionesRealizadas.Add(una_transicion); } } }); } return(viaticos); }
public static List <Area> GetAreasDeTablaDeDatos(TablaDeDatos tablaDatos) { List <Area> areas = new List <Area>(); if (tablaDatos.Rows.Count > 0) { tablaDatos.Rows.ForEach(row => { var Asistentes = new List <Asistente>(); if (areas.FindAll(a => a.Id == row.GetSmallintAsInt("Id_Area")).Count == 0) //refactorizar, poner un contains { List <DatoDeContacto> DatosDeContacto = new List <DatoDeContacto>(); Asistente asistente = new Asistente(row.GetString("Nombre_Asistente"), row.GetString("Apellido_Asistente"), row.GetString("Cargo"), row.GetSmallintAsInt("Prioridad_Asistente"), row.GetString("Telefono_Asistente"), row.GetString("Telefono_Asistente"),//Falta cambiar por Fax!!! row.GetString("Mail_Asistente")); if (asistente.Descripcion_Cargo.Trim() != "" && asistente.Apellido.Trim() != "") { Asistentes.Add(asistente); } Responsable datos_responsable = new Responsable(row.GetString("Nombre_Responsable"), row.GetString("Apellido_Responsable"), row.GetString("Nombre_Asistente"), //Falta cambiar!!! row.GetString("Nombre_Asistente"), //Falta cambiar!!! row.GetString("Nombre_Asistente")); //Falta cambiar!!! DatoDeContacto dato_de_contacto = new DatoDeContacto(row.GetSmallintAsInt("Id_Dato_Area"), row.GetString("Descripcion_Dato_Area"), row.GetString("Dato_Area"), row.GetSmallintAsInt("Orden")); DatosDeContacto.Add(dato_de_contacto); areas.Add(new Area { Id = row.GetSmallintAsInt("Id_Area"), Nombre = row.GetString("descripcion"), Direccion = row.GetString("direccion"), datos_del_responsable = datos_responsable, Asistentes = Asistentes, DatosDeContacto = DatosDeContacto, PresentaDDJJ = row.GetBoolean("presenta_DDJJ") }); } else { var area_existente = areas.Find(a => a.Id == row.GetSmallintAsInt("Id_Area")); if (!area_existente.Asistentes.Any(a => a.Apellido == row.GetString("Apellido_Asistente") && a.Descripcion_Cargo == row.GetString("Cargo"))) { Asistente asistente = new Asistente(row.GetString("Nombre_Asistente"), row.GetString("Apellido_Asistente"), row.GetString("Cargo"), row.GetSmallintAsInt("Prioridad_Asistente"), row.GetString("Telefono_Asistente"), row.GetString("Telefono_Asistente"),//Falta cambiar por Fax!!! row.GetString("Mail_Asistente")); if (asistente.Descripcion_Cargo.Trim() != "" && asistente.Apellido.Trim() != "") { area_existente.Asistentes.Add(asistente); } } if (!area_existente.DatosDeContacto.Any(d => d.Id == row.GetSmallintAsInt("Id_Dato_Area") && d.Orden == row.GetSmallintAsInt("Orden"))) { DatoDeContacto nuevo_dato = new DatoDeContacto(row.GetSmallintAsInt("Id_Dato_Area"), row.GetString("Descripcion_Dato_Area"), row.GetString("Dato_Area"), row.GetSmallintAsInt("Orden")); area_existente.DatosDeContacto.Add(nuevo_dato); } } }); } foreach (Area area in areas) { area.DatosDeContacto.Sort((dato1, dato2) => dato1.esMayorQue(dato2)); } return(areas); }