public Resultado <InfoPostergado> Guardar(InfoPostergado Entidad) { var ObjetoResultado = new Resultado <InfoPostergado>(); try { //Entidad.UsuarioModificacion_Id = (int)Administracion.NegUsuarios.UsuarioId; ObjetoResultado = AccesoDatos.Operacion <InfoPostergado>(ref Entidad, Documental.Data.Global.SP.prc_ProcesarCargaMasivaPostergados, Data.Global.Accion.Guardar, "ConexionSQL_WF"); if (Entidad != null) { ObjetoResultado.Objeto = new InfoPostergado(); ObjetoResultado.Objeto = Entidad; } return(ObjetoResultado); } catch (Exception) { ObjetoResultado.ResultadoGeneral = false; ObjetoResultado.Mensaje = ArchivoRecursos.ObtenerValorNodo(Constantes.MensajesUsuario.ErrorGuardar.ToString()) + " CargaMasivaInfo"; return(ObjetoResultado); } }
private void LeerArchivo(string Archivo, string extencion, string Tipo = "Existe") { OleDbConnection conexion = null; DataSet dataSet = null; OleDbDataAdapter dataAdapter = null; NegCargaMasivaPostergados oNegCarga = new NegCargaMasivaPostergados(); Resultado <InfoPostergado> resultCarga = new Resultado <InfoPostergado>(); string consultaHojaExcel = "Select * from [CreditosPostergados$]"; var Ruta = Archivo; string cadenaConexionArchivoExcel = ""; if (extencion == ".xlsx") { cadenaConexionArchivoExcel = "provider=Microsoft.ACE.OLEDB.12.0;Data Source='" + Ruta + "';Extended Properties=Excel 12.0;"; } else { cadenaConexionArchivoExcel = "provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + Ruta + "';Extended Properties=Excel 8.0;"; } //Validamos que el usuario ingrese el nombre de la hoja del archivo de excel a leer try { //Si el usuario escribio el nombre de la hoja se procedera con la busqueda conexion = new OleDbConnection(cadenaConexionArchivoExcel); //creamos la conexion con la hoja de excel conexion.Open(); //abrimos la conexion dataAdapter = new OleDbDataAdapter(consultaHojaExcel, conexion); //traemos los datos de la hoja y las guardamos en un dataSdapter dataSet = new DataSet(); // creamos la instancia del objeto DataSet dataAdapter.Fill(dataSet, "CreditosPostergados"); //llenamos el dataset conexion.Close(); //cerramos la conexion InfoPostergado objInt = new InfoPostergado(); List <InfoPostergado> lstPostergados = new List <InfoPostergado>(); InfoPostergado objPostergado = new InfoPostergado(); DateTime FechaAprobacion = DateTime.MinValue; decimal Tasa = decimal.Zero; int Plazo = 0; int Gracia = 0; int NroDividendosAPostergar = 0; int FechaEscritura = 0; string rutcliente = ""; foreach (DataRow dr in dataSet.Tables[0].Rows) { rutcliente = dr["Rut"].ToString(); if (rutcliente == null) { break; } objPostergado = new InfoPostergado(); objPostergado.Rut = rutcliente; if (DateTime.TryParse(dr["FechaAprobacion"].ToString(), out FechaAprobacion)) { objPostergado.FechaAprobacion = FechaAprobacion.ToShortDateString(); } else { objPostergado.Validado = false; objPostergado.MensajeError = "Error en el Formato de la Fecha Aprobacion (DD/MM/AAAA)"; } objPostergado.NroOperacion = dr["NroOperacion"].ToString(); if (int.TryParse(dr["Plazo"].ToString(), out Plazo)) { objPostergado.Plazo = Plazo; } else { objPostergado.Validado = false; objPostergado.MensajeError = "Plazo no es numero entero"; } if (int.TryParse(dr["Gracia"].ToString(), out Gracia)) { objPostergado.Gracia = Gracia; } else { objPostergado.Validado = false; objPostergado.MensajeError = "Gracia no es numero entero"; } if (int.TryParse(dr["NroDividendosAPostergar"].ToString(), out NroDividendosAPostergar)) { objPostergado.NroDividendosAPostergar = NroDividendosAPostergar; } else { objPostergado.Validado = false; objPostergado.MensajeError = "Dividendos a Postergar no es numero entero"; } if (decimal.TryParse(dr["Tasa"].ToString(), out Tasa)) { objPostergado.Tasa = Tasa; } else { objPostergado.Validado = false; objPostergado.MensajeError = "Error en el Formato de la tasa"; } if (int.TryParse(dr["FechaEscritura"].ToString(), out FechaEscritura)) { objPostergado.FechaEscritura = FechaEscritura; } else { objPostergado.Validado = false; objPostergado.MensajeError = "Fecha Escritura no es numero entero"; } lstPostergados.Add(objPostergado); } foreach (InfoPostergado c in lstPostergados) { if (c.Validado) { c.IndCarga = false; resultCarga = oNegCarga.Guardar(c); if (resultCarga.ResultadoGeneral) { if (resultCarga.Objeto.ResultadoCarga == "1") { c.MensajeError = resultCarga.Objeto.MensajeError; c.Validado = false; } } } } NegCargaMasivaPostergados.lstNominaPostergados = new List <InfoPostergado>(); NegCargaMasivaPostergados.lstNominaPostergados = lstPostergados; Controles.CargarGrid <InfoPostergado>(ref gvPostergados, lstPostergados, new string[] { "Rut" }); lblTotal.Text = lstPostergados.Count().ToString(); lblAprobados.Text = lstPostergados.Where(x => x.Validado == true).Count().ToString(); lblRechazados.Text = lstPostergados.Where(x => x.Validado == false).Count().ToString(); Controles.MostrarMensajeExito("Lectura de Créditos Postergados Exitosa"); } catch (Exception ex) { Controles.MostrarMensajeError(ex.Message); } }