public void ProcesarHistoricos(System.ComponentModel.BackgroundWorker worker, string periodo) { worker.ReportProgress(0); Fondos f = this.DatosExcelEstadisticas(periodo); worker.ReportProgress(40); cc.Procesar(f.Cesantia, periodo); worker.ReportProgress(60); ac.Procesar(f.Asfam, periodo); worker.ReportProgress(80); sc.Procesar(f.Sil, periodo); worker.ReportProgress(100); }
public Fondos DatosExcelEstadisticas(string periodo) { Fondos fret = new Fondos(); var excelApp = new ExcelX.Application(); Utilidades.AbrirLibro(excelApp, @"C:\Fondos Nacionales\in\" + periodo + @"\EstadisticaCRF"); #region Datos correspondientes al cuadro 1 ExcelX._Worksheet Cuadro1 = (ExcelX.Worksheet)excelApp.Sheets["Cuadros N°1"]; //Nº de Empresas fret.Cesantia.NroEmpresas = Cuadro1.Range["I17"].Text; fret.Asfam.NroEmpresas = Cuadro1.Range["I17"].Text; fret.Sil.NumEmpresasAfiliadas = Cuadro1.Range["I17"].Text; fret.Sil.NumEmpresasCotizantes = Cuadro1.Range["I17"].Text; #endregion #region Datos correspondientes al cuadro 2 ExcelX._Worksheet Cuadro2 = (ExcelX.Worksheet)excelApp.Sheets["Cuadros N°2"]; //Nº de Afiliados en el mes anterior fret.Cesantia.NroAfiliados = Cuadro2.Range["G22"].Text; fret.Sil.NumTrabajadoresAfiliados = Cuadro2.Range["G22"].Text; #endregion #region Datos correspondientes al cuadro 3 ExcelX._Worksheet Cuadro3 = (ExcelX.Worksheet)excelApp.Sheets["Cuadros N°3"]; //Nº de Asignaciones Familiares Pagadas fret.Asfam.NroAfiliados = Cuadro3.Range["H32"].Text; #endregion #region Datos correspondientes al cuadro 7 ExcelX._Worksheet Cuadro7 = (ExcelX.Worksheet)excelApp.Sheets["Cuadros N°7"]; //Nº de Asignaciones Familiares Pagadas fret.Asfam.NroAsignacionesFamiliaresPagadas = Cuadro7.Range["I20"].Text; #endregion #region Datos correspondientes al cuadro 13 ExcelX._Worksheet Cuadro13 = (ExcelX.Worksheet)excelApp.Sheets["Cuadro N°13"]; //Nº de Subsidios Pagados en el mes anterior fret.Cesantia.NroSubsidios = Cuadro13.Range["F19"].Text; #endregion excelApp.Quit(); System.Runtime.InteropServices.Marshal.FinalReleaseComObject(excelApp); /*OTHR*/ var excelAppXD = new ExcelX.Application(); Utilidades.AbrirLibro(excelAppXD, @"C:\Fondos Nacionales\in\" + periodo + @"\EstadisticaED"); ExcelX._Worksheet hoja = (ExcelX.Worksheet)excelAppXD.Sheets[1]; int TtlSubsidios = Convert.ToInt32(hoja.Range["F10"].Text.Replace(".", "").Replace(",", "")); excelAppXD.Quit(); System.Runtime.InteropServices.Marshal.FinalReleaseComObject(excelAppXD); /*OTR*/ var excelAppSil = new ExcelX.Application(); Utilidades.AbrirLibro(excelAppSil, @"C:\Fondos Nacionales\in\" + periodo + @"\EstadisticaSIL"); //excelAppSil.Workbooks.Open(@"C:\Fondos Nacionales\in\" + periodo + @"\EstadisticaSIL.xlsx"); #region Datos correspondientes al cuadro 3 ExcelX._Worksheet CuadroN3 = (ExcelX.Worksheet)excelAppSil.Sheets["SIL Anexo 6 - Cuadro Nº 3"]; fret.Sil.NumSubsidiosIniciados = Convert.ToString(Convert.ToInt32(CuadroN3.Range["D34"].Text.Replace(".", "").Replace(",", "")) + Convert.ToInt32(CuadroN3.Range["E34"].Text.Replace(".", "").Replace(",", "")) + TtlSubsidios); #endregion #region Datos correspondientes al cuadro 6y7 ExcelX._Worksheet CuadroN6Y7 = (ExcelX.Worksheet)excelAppSil.Sheets["SIL Anexo 6-Cuadro Nº 6 Y 7"]; fret.Sil.NumAfiliadosCotizantes = CuadroN6Y7.Range["D32"].Text; #endregion excelAppSil.Quit(); System.Runtime.InteropServices.Marshal.FinalReleaseComObject(excelAppSil); /*Nota Interna*/ var excelAppNotaInterna = new ExcelX.Application(); var libroXXX = Utilidades.AbrirLibro(excelAppNotaInterna, @"C:\Fondos Nacionales\in\" + periodo + @"\NOTA_INTERNA"); ExcelX._Worksheet HojaNotaInterna = libroXXX.Sheets["Nota Interna"]; fret.Cesantia.ValorNotaInterna = HojaNotaInterna.Range["B10"].Text; fret.Sil.ValorNotaInterna = HojaNotaInterna.Range["B2"].Text; fret.Asfam.NI_Tramo0 = HojaNotaInterna.Range["E3"].Text; fret.Asfam.NI_Tramo1 = HojaNotaInterna.Range["E4"].Text; fret.Asfam.NI_Tramo2 = HojaNotaInterna.Range["E5"].Text; fret.Asfam.NI_Tramo3 = HojaNotaInterna.Range["E6"].Text; fret.Asfam.NI_Tramo4 = HojaNotaInterna.Range["E7"].Text; excelAppNotaInterna.Quit(); System.Runtime.InteropServices.Marshal.FinalReleaseComObject(excelAppNotaInterna); return(fret); }