Example #1
0
        private void toolStripButton10_Click(object sender, EventArgs e)// Нажали кнопку експорт в Ексель
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            ExcelApp.SheetsInNewWorkbook = 1;
            Microsoft.Office.Interop.Excel.Workbook  ExcelWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;
            ExcelWorkBook  = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);

            string[,] dtValue = new string[dataGridView1.Rows.Count + 1, dataGridView1.ColumnCount];

            for (int i = 0; i < dataGridView1.ColumnCount; i++)      // подписываем столбики
            {
                dtValue[0, i] = dataGridView1.Columns[i].HeaderText; //
            }

            for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)  //
            {
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                {
                    dtValue[i + 1, j] = dataGridView1.Rows[i].Cells[j].Value.ToString();
                }
            }

            ExcelWorkSheet.get_Range("B3", "T" + (dataGridView1.Rows.Count + 2).ToString()).Value2 = dtValue;
            //ExcelWorkSheet.get_Range("B3", "T" + (dataGridView1.Rows.Count + 2).ToString()).NumberFormat = "@";
            //ExcelWorkSheet.get_Range("B3", "T" + (dataGridView1.Rows.Count + 2).ToString()).Font.Name = "Microsoft Sans Serif";
            //ExcelWorkSheet.get_Range("B3", "T" + (dataGridView1.Rows.Count + 2).ToString()).Font.Size = 10;

            //ExcelWorkSheet.get_Range("F", "F" + (dataGridView1.Rows.Count + 2).ToString()).NumberFormat = "0.00";

            //Вызываем нашу созданную эксельку.
            ExcelApp.Visible     = true;
            ExcelApp.UserControl = true;
        }
Example #2
0
        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            ExcelApp.SheetsInNewWorkbook = 1;
            Microsoft.Office.Interop.Excel.Workbook  ExcelWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;
            ExcelWorkBook  = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);

            string[,] dtValue = new string[dataGridView2.Rows.Count + 1, dataGridView2.ColumnCount];

            dtValue[0, 0] = dataGridView2.Columns[0].HeaderText; //
            dtValue[0, 1] = dataGridView2.Columns[1].HeaderText; //
            dtValue[0, 2] = dataGridView2.Columns[2].HeaderText; //

            for (int i = 0; i < dataGridView2.Rows.Count - 1; i++)
            {
                for (int j = 0; j < dataGridView2.ColumnCount; j++)
                {
                    dtValue[i + 1, j] = dataGridView2.Rows[i].Cells[j].Value.ToString();
                }
            }

            ExcelWorkSheet.get_Range("B3", "D" + (dataGridView2.Rows.Count + 2).ToString()).Value2       = dtValue;
            ExcelWorkSheet.get_Range("B3", "D" + (dataGridView2.Rows.Count + 2).ToString()).NumberFormat = "@";
            ExcelWorkSheet.get_Range("B3", "D" + (dataGridView2.Rows.Count + 2).ToString()).Font.Name    = "Microsoft Sans Serif";
            ExcelWorkSheet.get_Range("B3", "D" + (dataGridView2.Rows.Count + 2).ToString()).Font.Size    = 10;

            //Вызываем нашу созданную эксельку.
            ExcelApp.Visible     = true;
            ExcelApp.UserControl = true;
        }
Example #3
0
        public String ObtienePestañaEmpresa(ExcelWorkBook wb, string nombreEmpresa, int numeroHojas, string cuc)
        {
            string nombreSheet;
            int    rowIndex;

            object[] row;
            rowIndex = 13;//13

            for (int i = 1; i <= numeroHojas; i++)
            {
                //ot6891 inicio
                ExcelWorkSheet sheet = wb.GetSheet(i + 1);
                //ot6891 fin
                nombreSheet = sheet.getName();
                if (nombreSheet.Equals(nombreEmpresa))
                {
                    row = sheet.GetRow(rowIndex++, 'B', 'O');

                    while (row[0] != null)
                    {
                        if (row[0].ToString().Trim().Equals(cuc))
                        {
                            return(row[7].ToString().Trim());
                        }
                        row = sheet.GetRow(rowIndex++, 'B', 'O');
                    }
                }
            }
            return("");
        }
Example #4
0
        /* Экспорт в *.xlsx */
        private void btn_Export_Click(object sender, EventArgs e)
        {
            this.Enabled   = false;
            label3.Visible = true;

            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            Workbook  ExcelWorkBook;
            Worksheet ExcelWorkSheet;

            ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);

            //Таблица.
            ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);

            for (int i = 3; i < dgv_Keywords.ColumnCount; i++)
            {
                ExcelApp.Cells[i - 2] = dgv_Keywords.Columns[i].HeaderText;
                ExcelWorkSheet.Columns[i + 1].ColumnWidth = 12;
                ExcelWorkSheet.Columns[i + 1].Cells.HorizontalAlignment = XlHAlign.xlHAlignCenter;
            }


            for (int i = 0; i < dgv_Keywords.Rows.Count; i++)
            {
                for (int j = 3; j < dgv_Keywords.ColumnCount; j++)
                {
                    ExcelApp.Cells[i + 2, j - 2] = dgv_Keywords.Rows[i].Cells[j].Value;
                }
            }

            ExcelWorkSheet.get_Range("A1", "A1").Cells.HorizontalAlignment = XlHAlign.xlHAlignCenter;
            ExcelWorkSheet.get_Range("B1", "B1").Cells.HorizontalAlignment = XlHAlign.xlHAlignCenter;
            ExcelWorkSheet.get_Range("C1", "C1").Cells.HorizontalAlignment = XlHAlign.xlHAlignCenter;

            ExcelWorkSheet.Columns[1].ColumnWidth = 30;
            ExcelWorkSheet.Columns[2].ColumnWidth = 30;
            ExcelWorkSheet.Columns[3].ColumnWidth = 50;

            saveFileDialog1.Filter = "Excel(*.xlsx)|*.xlsx|All files(*.*)|*.*";

            saveFileDialog1.FileName = "Keyword Book 1";

            if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
            {
                ExcelWorkBook.Close(false);
            }
            else
            {
                // получаем выбранный файл
                string filename = saveFileDialog1.FileName;
                ExcelWorkBook.SaveAs(filename);
                ExcelWorkBook.Close(false);
                MessageBox.Show("Успешно сохранено!", "Успех");
            }

            label3.Visible = false;
            this.Enabled   = true;
        }
Example #5
0
        // Не используется.
        private void WriteToXlsx()
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();

            if (ExcelApp == null)
            {
                MessageBox.Show("Excel не установлен!");
                return;
            }

            Microsoft.Office.Interop.Excel.Workbook  ExcelWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;
            ExcelWorkBook  = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);
            for (int i = 1; i < dataGridView2.Columns.Count + 1; i++)
            {
                ExcelWorkSheet.Cells[1, i] = dataGridView2.Columns[i - 1].HeaderText;
            }
            for (int i = 0; i < dataGridView2.Rows.Count; i++)
            {
                for (int j = 0; j < dataGridView2.Columns.Count; j++)
                {
                    if (j == 3 || j == 4)
                    {
                        M = Convert.ToDouble(dataGridView2.Rows[i].Cells[j].Value.ToString());
                        ExcelWorkSheet.Cells[i + 2, j + 1] = M;
                    }
                    else if (j == 14)
                    {
                        M = Convert.ToDouble(dataGridView2.Rows[i].Cells[j].Value);
                        ExcelWorkSheet.Cells[i + 2, j + 1] = M;
                    }
                    else
                    {
                        ExcelWorkSheet.Cells[i + 2, j + 1] = dataGridView2.Rows[i].Cells[j].Value.ToString();
                    }
                }
            }

            ExcelWorkSheet.get_Range("A1", "S1").Interior.Color           = Color.LightGray;
            ExcelWorkSheet.get_Range("A1", "C1").EntireColumn.ColumnWidth = 30;
            ExcelWorkSheet.get_Range("D1", "E1").EntireColumn.ColumnWidth = 18;
            ExcelWorkSheet.get_Range("F1", "F1").EntireColumn.ColumnWidth = 15;
            ExcelWorkSheet.get_Range("G1", "I1").EntireColumn.ColumnWidth = 18;
            ExcelWorkSheet.get_Range("J1", "L1").EntireColumn.ColumnWidth = 15;
            ExcelWorkSheet.get_Range("M1", "R1").EntireColumn.ColumnWidth = 18;
            ExcelWorkSheet.get_Range("S1", "S1").EntireColumn.ColumnWidth = 21;
            ExcelWorkSheet.get_Range("A1", "S1").Font.Bold           = true;
            ExcelWorkSheet.get_Range("A1", "S1").HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            ExcelWorkSheet.get_Range("A1", "S1").Borders.Color       = System.Drawing.Color.Black.ToArgb();
            ExcelApp.Visible = true;
        }
Example #6
0
        public ExcelWorkSheet AddWorksheet(ExcelCellWrapper[] rows, string worksheetName, string headerStyle, Dictionary <string, string> headerMap, bool isDao)
        {
            foreach (ExcelCellWrapper cell in rows)
            {
                ValidateStyles(cell);
            }

            ExcelWorkSheet worksheet = new ExcelWorkSheet(rows, headerMap);

            worksheet.WorkSheetName = worksheetName;
            worksheet.objects       = rows;
            worksheet.headerStyle   = headerStyle;
            worksheet.isDao         = isDao;
            worksheets.Add(worksheetName, worksheet);
            return(worksheet);
        }
Example #7
0
        private void toolStripButton2_Click_1(object sender, EventArgs e) // Нажали кнопку Экспортировать в Ексель  dataGridView1   ----------------------------------------------
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            ExcelApp.SheetsInNewWorkbook = 1;
            Microsoft.Office.Interop.Excel.Workbook  ExcelWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;
            ExcelWorkBook  = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);

            string[,] dtValue = new string[dataGridView1.Rows.Count + 1, dataGridView1.ColumnCount];

            dtValue[0, 0]  = dataGridView1.Columns[0].HeaderText;  //
            dtValue[0, 1]  = dataGridView1.Columns[1].HeaderText;  //
            dtValue[0, 2]  = dataGridView1.Columns[2].HeaderText;  //
            dtValue[0, 3]  = dataGridView1.Columns[3].HeaderText;  //
            dtValue[0, 4]  = dataGridView1.Columns[4].HeaderText;  //
            dtValue[0, 5]  = dataGridView1.Columns[5].HeaderText;  //
            dtValue[0, 6]  = dataGridView1.Columns[6].HeaderText;  //
            dtValue[0, 7]  = dataGridView1.Columns[7].HeaderText;  //
            dtValue[0, 8]  = dataGridView1.Columns[8].HeaderText;  //
            dtValue[0, 9]  = dataGridView1.Columns[9].HeaderText;  //
            dtValue[0, 10] = dataGridView1.Columns[10].HeaderText; //
            dtValue[0, 11] = dataGridView1.Columns[11].HeaderText; //
            dtValue[0, 12] = dataGridView1.Columns[12].HeaderText; //
            dtValue[0, 13] = dataGridView1.Columns[13].HeaderText; //
            dtValue[0, 14] = dataGridView1.Columns[14].HeaderText; //
            dtValue[0, 15] = dataGridView1.Columns[15].HeaderText; //
            dtValue[0, 16] = dataGridView1.Columns[16].HeaderText; //
            dtValue[0, 17] = dataGridView1.Columns[17].HeaderText; //
            dtValue[0, 18] = dataGridView1.Columns[18].HeaderText; //
            dtValue[0, 19] = dataGridView1.Columns[19].HeaderText; //
            dtValue[0, 20] = dataGridView1.Columns[20].HeaderText; //
            dtValue[0, 21] = dataGridView1.Columns[21].HeaderText; //
            dtValue[0, 22] = dataGridView1.Columns[22].HeaderText; //
            dtValue[0, 23] = dataGridView1.Columns[23].HeaderText; //
            dtValue[0, 24] = dataGridView1.Columns[24].HeaderText; //
            dtValue[0, 25] = dataGridView1.Columns[25].HeaderText; //
            dtValue[0, 26] = dataGridView1.Columns[26].HeaderText; //
            dtValue[0, 27] = dataGridView1.Columns[27].HeaderText; //
            dtValue[0, 28] = dataGridView1.Columns[28].HeaderText; //


            for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)  //
            {
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                {
                    dtValue[i + 1, j] = dataGridView1.Rows[i].Cells[j].Value.ToString();
                }
            }

            ExcelWorkSheet.get_Range("A1", "AC" + (dataGridView1.Rows.Count + 1).ToString()).Value2              = dtValue;
            ExcelWorkSheet.get_Range("A1", "AC" + (dataGridView1.Rows.Count + 1).ToString()).NumberFormat        = "@";
            ExcelWorkSheet.get_Range("A1", "AC" + (dataGridView1.Rows.Count + 1).ToString()).Font.Name           = "Microsoft Sans Serif";
            ExcelWorkSheet.get_Range("A1", "AC" + (dataGridView1.Rows.Count + 1).ToString()).Font.Size           = 10;
            ExcelWorkSheet.get_Range("A1", "AC" + (dataGridView1.Rows.Count + 1).ToString()).Columns.ColumnWidth = 20;
            ExcelWorkSheet.get_Range("A1", "A1").Rows.RowHeight = 30;


            //ExcelWorkSheet.Range["A1", "AC"].HorizontalAlignment = Excel.Constants.xlCenter;
            //ExcelWorkSheet.Range["A1", "AC"].VerticalAlignment = Excel.Constants.xlCenter;


            //ExcelWorkSheet.get_Range("A1", "AC").Rows.Font.Bold = true;


            //Вызываем нашу созданную эксельку.
            ExcelApp.Visible     = true;
            ExcelApp.UserControl = true;

            //Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            //Microsoft.Office.Interop.Excel.Workbook ExcelWorkBook;
            //Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;

            //ExcelWorkBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);//Книга

            //ExcelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1); //Таблица

            //for (int i = -1; i < dataGridView1.Rows.Count; i++)
            //{
            //    for (int j = 0; j < dataGridView1.ColumnCount; j++)
            //    {
            //        if (i == -1)
            //            ExcelApp.Cells[1, j + 1] = dataGridView1.Columns[j].Name;
            //        else
            //            ExcelApp.Cells[i +2, j + 1] = dataGridView1.Rows[i].Cells[j].Value;
            //    }
            //}

            //ExcelApp.Visible = true;  //Вызываем нашу созданную эксельку
            //ExcelApp.UserControl = true;
        }
Example #8
0
        /// <summary>
        /// Obtiene los registros de asientos tipo VT de ingresos a partir de un archivo Excel.
        /// </summary>
        /// <param name="dtAsientos">Tabla en la que se volcará la información de los asientos a generar.</param>
        /// <param name="archivo">Ruta y nombre del archivo Excel que contiene la información del reporte de ingresos para obtener los asientos.</param>
        public void ObtenerAsientosVTIngresos(Procesos.TD.Asiento.LISTA_ASIENTODataTable dtAsientos, string archivo)
        {
            Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("es-PE");
            CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;

            try
            {
                Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");
                ExcelApplication app   = new ExcelApplication();
                ExcelWorkBook    wb    = app.OpenWorkBook(archivo, ExcelMode.Full);
                ExcelWorkSheet   sheet = wb.GetSheet(1);

                String    fechaAsiento = sheet.GetString("G3"); //convertir a fecha
                DataTable dt           = sheet.LeerTabla("B", "I", 5, sheet.ObtenerUltimaFilaTabla("B", 6), true);

                /*String factura = sheet.GetString("G2");
                 * string[] partesFactura = ObtenerPartesFactura(factura);
                 * string numeros = partesFactura[0];
                 * string letras = partesFactura[1];
                 */
                ParametrosDA parametrosDA       = new ParametrosDA();
                DataTable    dtParametroRUC     = parametrosDA.ObtenerValoresParametros(ConstantesING.TABLA_TIPO_DOCUMENTO, ConstantesING.TIPO_DOCUMENTO_RUC);
                String       tipoDocumentoSunat = dtParametroRUC.Rows[0]["CAMPO1"].ToString();

                //int correlativoFactura = Convert.ToInt32(numeros);

                wb.Close();
                app.Close();
                Hashtable ht = new Hashtable();
                foreach (DataRow dr in dt.Rows)
                {
                    string fondo = dr["Fondo"].ToString().Trim();
                    if (!ht.ContainsKey(fondo))
                    {
                        Asiento.LISTA_ASIENTORow row = dtAsientos.NewLISTA_ASIENTORow();

                        //string numeroFactura = letras + correlativoFactura.ToString().PadLeft(numeros.Length, '0');
                        //correlativoFactura++;
                        object total = dt.Compute("SUM(Ingresos)", "Fondo = '" + fondo + "'");
                        //object totalImpuesto = dt.Compute("SUM(IGV)", "Fondo = '" + fondo + "'");
                        object totalPN = dt.Compute("SUM(Ingresos)", "Fondo = '" + fondo + "' and TipoPersona = 'PN'");
                        //object impuestoPN = dt.Compute("SUM(IGV)", "Fondo = '" + fondo + "' and TipoPersona = 'PN'");
                        object totalPJ = dt.Compute("SUM(Ingresos)", "Fondo = '" + fondo + "' and TipoPersona = 'PJ'");
                        //object impuestoPJ = dt.Compute("SUM(IGV)", "Fondo = '" + fondo + "' and TipoPersona = 'PJ'");
                        //object subtotal = Convert.ToDecimal(total) - Convert.ToDecimal(totalImpuesto);
                        object igv = dt.Compute("SUM(IGV)", "Fondo = '" + fondo + "'");
                        row.TIPO_ASIENTO  = "VT_ING";
                        row.UUID          = "";
                        row.ESTADO        = "";
                        row.FONDO         = fondo;
                        row.FECHA_PROCESO = DateTime.ParseExact(fechaAsiento, "dd/MM/yyyy", CultureInfo.InvariantCulture).Date;
                        row.ID_OPERACION  = "";
                        row.MONEDA        = dr["Moneda"].ToString() == "SOL" ? "PEN" : "USD";
                        row.TOTAL         = total == null || total == DBNull.Value ? 0 : Decimal.Round(Convert.ToDecimal(total), 2);
                        row.MONTO1        = total == null || total == DBNull.Value ? 0 : Decimal.Round(Convert.ToDecimal(total), 2);


                        //row.MONTO2 = totalImpuesto == null || totalImpuesto == DBNull.Value ? 0 : Convert.ToDecimal(totalImpuesto);
                        //row.MONTO3 = totalPN == null || totalPN == DBNull.Value ? 0 : Convert.ToDecimal(totalPN);
                        //row.MONTO4 = totalPJ == null || totalPJ == DBNull.Value ? 0 : Convert.ToDecimal(totalPJ);
                        row.MONTO2 = totalPN == null || totalPN == DBNull.Value ? 0 : Decimal.Round(Convert.ToDecimal(totalPN), 2);
                        row.MONTO3 = totalPJ == null || totalPJ == DBNull.Value ? 0 : row.MONTO1 - row.MONTO2;
                        row.MONTO4 = 0;
                        row.MONTO5 = 0;
                        //ABRIR EN CASO SE JUNTEN LOS MONTO 3 Y MONTO4
                        row.REFERENCIA  = "";// numeroFactura;
                        row.REFERENCIA1 = tipoDocumentoSunat;
                        //row.MONTO3 = subtotal == null || subtotal == DBNull.Value ? 0 : Convert.ToDecimal(subtotal);

                        row.TEXTO1 = row.FECHA_PROCESO.ToString("MM");
                        row.TEXTO2 = row.FECHA_PROCESO.ToString("yyyy");

                        DataTable dtFondo = parametrosDA.ObtenerValoresParametros(ConstantesING.FONDO, fondo);
                        row.TIPO_DOCUMENTO = ConstantesING.TIPO_DOCUMENTO_RUC;
                        row.CODIGO_CLIENTE = dtFondo.Rows[0]["CAMPO2"].ToString();
                        row.RAZON_SOCIAL   = dtFondo.Rows[0]["CAMPO3"].ToString();

                        row.DIRECCION       = ConfigurationSettings.AppSettings[ConstantesING.DIRECCION_FONDOS];
                        row.DISTRITO        = ConfigurationSettings.AppSettings[ConstantesING.DISTRITO_FONDOS];
                        row.PROVINCIA       = ConfigurationSettings.AppSettings[ConstantesING.PROVINCIA_FONDOS];
                        row.DEPARTAMENTO    = ConfigurationSettings.AppSettings[ConstantesING.DEPARTAMENTO_FONDOS];
                        row.CODIGO_PAIS     = ConstantesING.CODIGO_PERU;
                        row.CORREO          = ConfigurationSettings.AppSettings[ConstantesING.CORREO_FONDOS];
                        row.ID_PAIS         = ConfigurationSettings.AppSettings[ConstantesING.ID_PAIS_FONDOS];
                        row.ID_DEPARTAMENTO = ConfigurationSettings.AppSettings[ConstantesING.ID_DEPARTAMENTO_FONDOS];
                        row.ID_CIUDAD       = ConfigurationSettings.AppSettings[ConstantesING.ID_CIUDAD_FONDOS];
                        row.ID_DISTRITO     = ConfigurationSettings.AppSettings[ConstantesING.ID_DISTRITO_FONDOS];
                        row.UBIGEO          = ConfigurationSettings.AppSettings[ConstantesING.UBIGEO_FONDOS];

                        row.IGVF   = Decimal.ToDouble(Decimal.Round(Convert.ToDecimal(igv), 2));
                        row.TOTALF = Decimal.ToDouble(row.TOTAL);
                        row.SUBF   = row.TOTALF - row.IGVF;

                        dtAsientos.AddLISTA_ASIENTORow(row);
                        ht.Add(fondo, fondo);
                    }
                }

                da.Server   = INGFondos.Constants.Conexiones.ServidorSAP;
                da.Database = INGFondos.Constants.Conexiones.BaseDeDatosSAP;
                da.ListarControlAsiento(dtAsientos, "VT_ING", DateTime.ParseExact(fechaAsiento, "dd/MM/yyyy", CultureInfo.InvariantCulture).Date);
                da.Server   = INGFondos.Constants.Conexiones.ServidorOperaciones;
                da.Database = INGFondos.Constants.Conexiones.BaseDeDatosOperaciones;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                Thread.CurrentThread.CurrentCulture = originalCulture;
            }
        }
Example #9
0
        private void ExportButton_Click(object sender, EventArgs e)
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            Workbook  ExcelWorkBook;
            Worksheet ExcelWorkSheet;
            Range     ExcelRange;
            object    misValue = System.Reflection.Missing.Value;

            ExcelWorkBook  = ExcelApp.Workbooks.Add(misValue);
            ExcelWorkSheet = (Worksheet)ExcelWorkBook.Worksheets.get_Item(1);
            ExcelWorkSheet.Columns.HorizontalAlignment = 3;
            ExcelWorkSheet.Cells[1, 1]  = "Магазин";
            ExcelWorkSheet.Cells[1, 2]  = "Артикул";
            ExcelWorkSheet.Cells[1, 3]  = "Наименование";
            ExcelWorkSheet.Cells[1, 4]  = "1 нед. назад";
            ExcelWorkSheet.Cells[1, 5]  = "2 нед. назад";
            ExcelWorkSheet.Cells[1, 6]  = "3 нед. назад";
            ExcelWorkSheet.Cells[1, 7]  = "Прошл. ср. продажи";
            ExcelWorkSheet.Cells[1, 8]  = "1 нед. вперед";
            ExcelWorkSheet.Cells[1, 9]  = "2 нед. вперед";
            ExcelWorkSheet.Cells[1, 10] = "3 нед. вперед";
            ExcelWorkSheet.Cells[1, 11] = "Буд. ср. продажи";
            ExcelWorkSheet.Cells[1, 12] = "Текущие продажи";
            ExcelWorkSheet.Cells[1, 13] = "Потр. магазина";
            ExcelWorkSheet.Cells[1, 14] = "Наличие";
            ExcelWorkSheet.Cells[1, 15] = "Поставки";
            ExcelWorkSheet.Cells[1, 16] = "Транзит";
            ExcelWorkSheet.Cells[1, 17] = "Будет";
            ExcelWorkSheet.Cells[1, 18] = "Минимум";
            ExcelWorkSheet.Cells[1, 19] = "Максимум ср.";
            ExcelWorkSheet.Cells[1, 20] = "Максимум";
            ExcelWorkSheet.Cells[1, 21] = "Прогноз";
            ExcelWorkSheet.Cells[1, 22] = "Дельта";
            ExcelWorkSheet.Cells[1, 23] = "SL";
            ExcelWorkSheet.Cells[1, 24] = "Остаток на СГП";
            ExcelWorkSheet.Cells[1, 25] = "ПЗ";
            ExcelWorkSheet.Cells[1, 26] = "Будущие ПЗ";
            ExcelWorkSheet.Cells[1, 27] = "Начало анализа";
            ExcelWorkSheet.Cells[1, 28] = "Конец анализа";
            object[,] objData           = new object[PlanDataGrid.Rows.Count, PlanDataGrid.Columns.Count];
            for (int j = 0; j < PlanDataGrid.Columns.Count; j++)
            {
                for (int i = 0; i < PlanDataGrid.Rows.Count; i++)
                {
                    objData[i, j] = (j == 1 ? "'" : "") + PlanDataGrid.Rows[i].Cells[j].Value.ToString();
                }
            }
            ExcelRange           = ExcelWorkSheet.get_Range("A1", misValue);
            ExcelRange           = ExcelRange.get_Resize(1, PlanDataGrid.Columns.Count);
            ExcelRange.Font.Bold = true;
            ExcelRange.AutoFilter(1, ExcelRange, XlAutoFilterOperator.xlAnd, misValue, true);
            ExcelRange                   = ExcelWorkSheet.get_Range("A2", misValue);
            ExcelRange                   = ExcelRange.get_Resize(PlanDataGrid.Rows.Count, PlanDataGrid.Columns.Count);
            ExcelRange.Value2            = objData;
            ExcelRange                   = ExcelWorkSheet.get_Range("A1", misValue);
            ExcelRange                   = ExcelRange.get_Resize(PlanDataGrid.Rows.Count + 1, PlanDataGrid.Columns.Count);
            ExcelRange.Borders.LineStyle = 1;
            ExcelRange.Columns.AutoFit();
            ExcelRange.Rows.AutoFit();
            ExcelApp.Interactive    = true;
            ExcelApp.ScreenUpdating = true;
            ExcelApp.Visible        = true;
            ExcelApp.UserControl    = true;
        }
Example #10
0
        static void Main(string[] args)
        {
            SqlConnection sqlConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["UMS"].ConnectionString);
            SqlCommand    sqlCommand    = new SqlCommand("SELECT * FROM ExcelGenerate", sqlConnection);
            SqlCommand    sqlCommand2   = new SqlCommand("SELECT * FROM UserInfo", sqlConnection);
            SqlCommand    sqlCommandDel = new SqlCommand("DELETE FROM ExcelGenerate", sqlConnection);

            /*sqlCommand.CommandType = CommandType.StoredProcedure;*/
            /*sqlCommand.Parameters.AddWithValue("@UserId", userId);*/
            sqlConnection.Open();
            var reader = sqlCommand.ExecuteReader();

            if (reader.Read())
            {
                string fileName    = reader.GetString(0);
                string sendEmailTo = reader.GetString(1);

                sqlConnection.Close();

                sqlConnection.Open();
                var getAll = sqlCommand2.ExecuteReader();

                string OpenAtDownload = "";


                /* System.Diagnostics.Debug.WriteLine("Is it empty: " + fileName.IsNullOrWhiteSpace());
                 * if (fileName == "" || fileName.IsNullOrWhiteSpace() == true) { fileName = "UserList"; }*/
                if (fileName == "" || fileName == null)
                {
                    fileName = "UserList";
                }

                Microsoft.Office.Interop.Excel.Workbook  ExcelWorkBook;
                Microsoft.Office.Interop.Excel.Worksheet ExcelWorkSheet;
                object misValue = System.Reflection.Missing.Value;
                Microsoft.Office.Interop.Excel.Application ExcelExport = new Microsoft.Office.Interop.Excel.Application();

                ExcelWorkBook  = ExcelExport.Workbooks.Add(misValue);
                ExcelWorkSheet = ExcelWorkBook.Worksheets.get_Item(1);

                ExcelWorkSheet.Cells.NumberFormat = "@";
                var rowColor = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Yellow);

                ExcelWorkSheet.get_Range("A1", "K1").Interior.Color = rowColor;
                ExcelWorkSheet.get_Range("A1", "K1").Font.Bold      = true;


                ExcelWorkSheet.Cells[1, 1] = "UserName";

                ExcelWorkSheet.Cells[1, 2] = "FirstName";

                ExcelWorkSheet.Cells[1, 3] = "LastName";

                ExcelWorkSheet.Cells[1, 4] = "Email";

                ExcelWorkSheet.Cells[1, 5] = "Address";

                ExcelWorkSheet.Cells[1, 6] = "City";

                ExcelWorkSheet.Cells[1, 7] = "Country";

                ExcelWorkSheet.Cells[1, 8] = "ZipCode";

                ExcelWorkSheet.Cells[1, 9] = "PhoneNumber";

                ExcelWorkSheet.Cells[1, 10] = "Role";

                ExcelWorkSheet.Cells[1, 11] = "Status";

                /*  var userInfoes = db.UserInfoes.Include(u => u.Role).Include(u => u.Status).Include(u => u.UserCredential);
                 * userInfoes.ToList();*/
                int row = 2;
                while (getAll.Read())
                {
                    ExcelWorkSheet.Cells[row, 1]  = getAll.GetString(1);
                    ExcelWorkSheet.Cells[row, 2]  = getAll.GetString(2);
                    ExcelWorkSheet.Cells[row, 3]  = getAll.GetString(3);
                    ExcelWorkSheet.Cells[row, 4]  = getAll.GetString(4);
                    ExcelWorkSheet.Cells[row, 5]  = getAll.GetString(5);
                    ExcelWorkSheet.Cells[row, 6]  = getAll.GetString(6);
                    ExcelWorkSheet.Cells[row, 7]  = getAll.GetString(7);
                    ExcelWorkSheet.Cells[row, 8]  = getAll.GetString(8);
                    ExcelWorkSheet.Cells[row, 9]  = getAll.GetString(9);
                    ExcelWorkSheet.Cells[row, 10] = getAll.GetInt32(10);
                    ExcelWorkSheet.Cells[row, 11] = getAll.GetInt32(11);
                    row++;
                }
                ExcelWorkSheet.Columns.AutoFit();
                /*string isEmailSend = "";*/
                sqlConnection.Close();
                sqlConnection.Open();
                try
                {
                    ExcelWorkBook.SaveAs(fileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);

                    if (sendEmailTo != null)
                    {
                        try
                        {
                            ExcelWorkBook.SendMail(sendEmailTo, "User List From the User Management System");
                            /*isEmailSend = "Email was sent.";*/
                        }
                        catch
                        {
                            /*isEmailSend = "Email was not sent.";*/
                        }
                    }

                    if (OpenAtDownload == "true")
                    {
                        ExcelWorkBook.WebPagePreview();
                        /*System.Diagnostics.Process.Start($"E:/Documents/{fileName}.xls"); */
                    }
                    /*ExcelWorkBook.WebPagePreview();*/
                    ExcelWorkBook.Close(true, misValue, misValue);

                    ExcelExport.Quit();

                    Marshal.ReleaseComObject(ExcelWorkSheet);
                    Marshal.ReleaseComObject(ExcelWorkBook);
                    Marshal.ReleaseComObject(ExcelExport);
                    sqlCommandDel.ExecuteReader();
                    sqlConnection.Close();
                    Environment.Exit(0);
                    /*return RedirectToAction("Index", new { a = "Excel Document was created sucessfully and it should be available in your Documents folder.", color = "green", emailStatus = isEmailSend });*/
                }
                catch
                {
                    ExcelWorkBook.Close(true, misValue, misValue);

                    ExcelExport.Quit();


                    Marshal.ReleaseComObject(ExcelWorkSheet);
                    Marshal.ReleaseComObject(ExcelWorkBook);
                    Marshal.ReleaseComObject(ExcelExport);

                    /*System.Diagnostics.Debug.WriteLine("Excel Document was not created.");*/
                    sqlCommandDel.ExecuteReader();
                    sqlConnection.Close();
                    /*return RedirectToAction("Index", new { a = "Excel Document was not created.", color = "red", emailStatus = isEmailSend });*/
                    Environment.Exit(0);
                }
            }
        }
Example #11
0
        /// <summary>
        /// 指定されたExcelファイルを読み込む
        /// </summary>
        private void ReadExcel()
        {
            //Excelファイル選択し、選択されなければ終了。
            if (this.openFileExcel.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            Address_DS ads     = new Address_DS();
            Address_DS errords = new Address_DS();

            // ExcelWorkBookオープン
            ExcelWorkBook wBook = new ExcelWorkBook();

            wBook.Open(this.openFileExcel.FileName);
            try
            {
                //1行目を読み込む
                ExcelWorkSheet sheet      = wBook.WorkSheets[0];
                ArrayList      columnList = new ArrayList();
                for (int col = sheet.FirstColumn; col <= sheet.LastColumn; col++)
                {
                    if (sheet.Cells[0, col].Value == null)
                    {
                        continue;
                    }
                    columnList.Add(sheet.Cells[0, col].Value);
                }

                //読み込み行がない場合は空のデータセットを返す。
                if (columnList.Count == 0)
                {
                    MessageBox.Show(this, "読み込み可能な行がありません。");
                    return;
                }

                using (ColumnSelectForm f = new ColumnSelectForm(columnList))
                {
                    //行選択画面を表示し、ユーザに読み込む行を指定してもらう
                    if (f.ShowDialog() != DialogResult.OK)
                    {
                        //選択されなければ、空のデータセットを返す。
                        return;
                    }

                    int readStartRowIndex = 0;
                    if (f.ReadFirstRow == true)
                    {
                        readStartRowIndex = 0;
                    }
                    else
                    {
                        readStartRowIndex = 1;
                    }


                    //ユーザが指定した列を読み込む
                    for (int row = readStartRowIndex; row <= sheet.LastRow; row++)
                    {
                        //NULLやすでに取り込まれたメールアドレスははずす。
                        if (!((sheet.Cells[row, f.SelectColumnIndex].Value == null) ||
                              ads.Address.FindByMailAddress(sheet.Cells[row, f.SelectColumnIndex].Value.ToString()) != null))
                        {
                            string mailAddr = sheet.Cells[row, f.SelectColumnIndex].Value.ToString();
                            //メールアドレス形式のアドレスのみ登録
                            if (TKMP.Writer.MailAddressCollection.IsAddressPattern(mailAddr) == true)
                            {
                                Address_DS.AddressRow aRow = ads.Address.NewAddressRow();
                                aRow.MailAddress = mailAddr;
                                ads.Address.AddAddressRow(aRow);
                            }
                            else
                            {
                                //メールアドレス形式でないものは、エラーリストに保存
                                Address_DS.AddressRow aeRow = errords.Address.NewAddressRow();
                                aeRow.MailAddress = mailAddr;
                                errords.Address.AddAddressRow(aeRow);
                            }
                        }
                    }
                }
            }
            finally
            {
                // ExcelWorkBookクローズ
                wBook.Close();
            }

            //Excelファイルを読み取る。
            this._addressds.Merge(ads);

            //エラー情報をセットする。
            this._errorForm.ErrorList = errords;
        }
Example #12
0
        public void Procesar()
        {
            ExcelApplication excelApplication = new ExcelApplication();
            SqlConnection    cn = GetConnection();

            cn.Open();

            SqlTransaction trans = cn.BeginTransaction(IsolationLevel.ReadUncommitted);

            try
            {
                // Abriendo el archivo que contiene la información
                //excelApplication.OpenWorkBook(sourcePath, ExcelMode.Full);
                excelApplication.OpenWorkBook(sourcePath, ExcelMode.ReadOnly);
                ExcelWorkSheet sheet = excelApplication.GetWorkBook(1).GetSheet(1);

                //Obtiene los prospectos vacios
                SegmentacionRegionalDA segmentacionRegionalDA = new SegmentacionRegionalDA();

                // Obteniendo la información del archivo
                int      rowIndex = 2;
                object[] row      = sheet.GetRow(rowIndex++, 'A', 'B');
                int      contador = 0;

                while (row[0] != null)
                {
                    try
                    {
                        //Leer datos del Partícipe
                        ParticipeSegmentacionTD.PARTICIPE_SEGMENTACION_REGIONALRow drParticipeSegmentacion = new ParticipeSegmentacionTD().PARTICIPE_SEGMENTACION_REGIONAL.NewPARTICIPE_SEGMENTACION_REGIONALRow();
                        drParticipeSegmentacion.NUMERO_DOCUMENTO      = row[0].ToString();
                        drParticipeSegmentacion.SEGMENTACION_REGIONAL = row[1].ToString();
                        drParticipeSegmentacion.USUARIO = codigoUsuario;

                        segmentacionRegionalDA.ActualizarParticipeSegmentacion(drParticipeSegmentacion, cn, trans);

                        row = sheet.GetRow(rowIndex++, 'A', 'B');
                        contador++;
                    }
                    catch (Exception ex)
                    {
                        throw new Exception(string.Format("Error en la línea {0}. Detalle " + ex.Message, rowIndex - 1));
                    }
                }

                trans.Commit();
                //excelApplication.GetWorkBook(1).Save();
            }
            catch (Exception ex)
            {
                trans.Rollback();
                excelApplication.GetWorkBook(1).Close();
                excelApplication.Close();
                throw ex;
            }
            finally
            {
                trans.Dispose();
                cn.Close();
            }
        }
        public void Procesar()
        {
            ExcelApplication excelApplication = new ExcelApplication();
            CargaContratoDA  da = new CargaContratoDA();
            SqlConnection    cn = GetConnection();

            cn.Open();

            SqlTransaction trans         = cn.BeginTransaction(IsolationLevel.ReadUncommitted);
            int            cucanterior   = 0;
            int            idanterior    = 0;
            string         prmVidaAhorro = "";
            string         prmCUC        = "";

            try
            {
                // Abriendo el archivo que contiene la información
                excelApplication.OpenWorkBook(sourcePath, ExcelMode.Full);
                ExcelWorkSheet sheet = excelApplication.GetWorkBook(1).GetSheet(1);

                //Obtiene los prospectos vacios
                CargaContratoDA cargaContratoDA = new CargaContratoDA();
                DataTable       dtProspectos    = cargaContratoDA.ObtenerListaProspectosVacios();

                // Obteniendo la información del archivo
                int      rowIndex = 6;
                object[] row      = sheet.GetRow(rowIndex++, 'C', 'Z', 4);
                int      contador = 0;
                //OT 6891 inicio
                DataTable dtCodVida       = ObtenerCodigoEmpresas_Vida();
                string    DSC_VIDA_AHORRO = "";
                if (dtCodVida.Rows.Count > 0)
                {
                    DataRow row1 = dtCodVida.Rows[0];
                    //Obtiene nombre de la empresa Vida Ahorro
                    DSC_VIDA_AHORRO = Convert.ToString(row1["DESCRIPCION_LARGA"]);
                }


                DataTable dtPlanVidaAhorro     = ObtenerPlanVidaAhorro();
                string    DSC_PLAN_VIDA_AHORRO = "";
                if (dtPlanVidaAhorro.Rows.Count > 0)
                {
                    DataRow row2 = dtPlanVidaAhorro.Rows[0];
                    //Obtiene nombre de la empresa Vida Ahorro
                    DSC_PLAN_VIDA_AHORRO = Convert.ToString(row2["VALOR"]);
                }


                while (row[0] != null)
                {
                    try
                    {
                        int idProspecto     = Convert.ToInt32(sheet.GetString(string.Format("B{0}", rowIndex - 1))) - 44670000;
                        int codigoProspecto = Convert.ToInt32(sheet.GetString(string.Format("B{0}", rowIndex - 1)));

                        //Leer datos del Partícipe



                        ParticipeTD.ParticipeRow drParticipe = new ParticipeTD().Participe.NewParticipeRow();
                        drParticipe.IDENTIFICADOR = Convert.ToInt32(sheet.GetString(string.Format("B{0}", rowIndex - 1))) - 44670000;
                        drParticipe.CODIGO        = Convert.ToInt32(sheet.GetString(string.Format("B{0}", rowIndex - 1)));
                        // Ini - traer el CUC del Participe OT 6891
                        prmCUC = drParticipe.CODIGO.ToString();
                        // Fin  - traer el CUC del Participe OT 6891
                        drParticipe.TIPO_PERSONA     = row[71].ToString();
                        drParticipe.NOMBRE1          = row[2].ToString();
                        drParticipe.NOMBRE2          = row[3] == null ? "" : row[3].ToString();
                        drParticipe.NOMBRE3          = row[4] == null ? "" : row[4].ToString();
                        drParticipe.APELLIDO_PATERNO = row[5].ToString();
                        drParticipe.APELLIDO_MATERNO = row[6].ToString();
                        drParticipe.SEXO             = row[72].ToString();
                        drParticipe.FECHA_NACIMIENTO = Convert.ToDateTime(row[8]);

                        drParticipe.TIPO_DOCUMENTO        = row[73].ToString();
                        drParticipe.NUMERO_DOCUMENTO      = row[10].ToString();
                        drParticipe.TIPO_FIRMA            = row[74].ToString();
                        drParticipe.TIPO_PARTICIPE        = row[75].ToString();
                        drParticipe.ESTADO_CIVIL          = row[76].ToString();
                        drParticipe.CODIGO_AGENCIA_ORIGEN = row[77] == null ? "" : row[77].ToString();
                        drParticipe.TIPO_PERSONERIA       = row[78] == null ? "" : row[78].ToString();
                        drParticipe.SENAS_PARTICULARES    = row[16] == null ? "" : row[16].ToString();
                        drParticipe.FLAG_RELACION_SURA    = "N";
                        drParticipe.NACIONALIDAD          = row[80].ToString();
                        drParticipe.PROFESION             = row[18] == null ? "" : row[18].ToString();
                        drParticipe.COMPANIA                   = row[19] == null ? "" : row[19].ToString();
                        drParticipe.CARGO                      = row[20] == null ? "" : row[20].ToString();
                        drParticipe.NUMERO_HIJOS               = row[21] == null ? 0 : Convert.ToInt32(row[21]);
                        drParticipe.LUGAR_NACIMIENTO           = row[81] == null ? null : row[81].ToString();
                        drParticipe.PAIS_RESIDENCIA            = row[82].ToString();
                        drParticipe.NIVEL_CARGO                = row[83] == null ? null : row[83].ToString();
                        drParticipe.GRADO_INSTRUCCION          = row[84] == null ? null : row[84].ToString();
                        drParticipe.CAPACIDAD_LEGAL            = row[85] == null ? null : row[85].ToString();
                        drParticipe.FLAG_CORRESPONDENCIA_EMAIL = row[27] == null ? "" : row[27].ToString();
                        drParticipe.FLAG_MEDIO_CONSULTAS       = row[28] == null ? "" : row[28].ToString();
                        drParticipe.FLAG_MEDIO_OPERACIONES     = row[29] == null ? "" : row[29].ToString();
                        drParticipe.TIPO_ATRIBUCION            = row[100] == null ? null : row[100].ToString();

                        drParticipe.USUARIO = codigoUsuario;
                        //INI OT 6891
                        // Tabla telefono
                        ParticipeTD.TelefonoRow drTelefono = new ParticipeTD().Telefono.NewTelefonoRow();
                        drTelefono.NUMERO = row[31] == null ? "" : row[31].ToString();


                        //Tabla correo electronico
                        ParticipeTD.Correo_EletronicoRow drCorreo = new ParticipeTD().Correo_Eletronico.NewCorreo_EletronicoRow();
                        drCorreo.CORREO = row[30] == null ? "" : row[30].ToString();

                        ParticipeTD.BoletinesRow drboletin = new ParticipeTD().Boletines.NewBoletinesRow();
                        drboletin.BOLETIN = row[32].ToString();

                        // Tabla direccion
                        ParticipeTD.DireccionRow drDireccion = new ParticipeTD().Direccion.NewDireccionRow();
                        string pais = "";
                        pais = row[105].ToString();
                        if (row[103].Equals("") || row[103].Equals(null) || pais.Length > 5)
                        {
                            drDireccion.DEPARTAMENTO = 0;
                        }
                        else
                        {
                            drDireccion.DEPARTAMENTO = Convert.ToInt32(row[103]);
                        }
                        string ciud = "";
                        ciud = row[105].ToString();
                        if (row[104].Equals("") || row[104].Equals(null) || ciud.Length > 5)
                        {
                            drDireccion.CIUDAD = 0;
                        }
                        else
                        {
                            drDireccion.CIUDAD = Convert.ToInt32(row[104]);
                        }
                        string dist = "";
                        dist = row[105].ToString();
                        if (row[105].Equals("") || row[105].Equals(null) || dist.Length > 5)
                        {
                            drDireccion.DISTRITO = 0;
                        }
                        else
                        {
                            drDireccion.DISTRITO = Convert.ToInt32(row[105]);
                        }
                        //  drDireccion.CIUDAD = Convert.ToInt32(row[104]);
                        //****
                        // drDireccion.DISTRITO = Convert.ToInt32(row[105]);
                        drDireccion.TIPO_VIA       = row[106] == null ? "" : row[106].ToString();
                        drDireccion.NOMBRE_VIA     = row[37] == null ? "" : row[37].ToString();
                        drDireccion.NU_IND_DEP     = row[38] == null ? "" : row[38].ToString();
                        drDireccion.UBICACION      = row[40] == null ? "" : row[40].ToString();
                        drDireccion.TIPO_UBICACION = row[107] == null ? "" : row[107].ToString();


                        //fin OT 6891


                        //Leer datos del Fondo

                        ParticipeTD.FondoRow drFondo = new ParticipeTD().Fondo.NewFondoRow();
                        drFondo.ID_FONDO = Convert.ToInt32(row[87]);
                        //OT5012 INI
                        drFondo.FECHA = Convert.ToDateTime(row[43]);

                        //Leer datos del documento
                        ParticipeTD.DocumentoRow drDocumento = new ParticipeTD().Documento.NewDocumentoRow();
                        //OT5012 FIN

                        drDocumento.TIPO          = row[86].ToString();
                        drDocumento.FECHA         = Convert.ToDateTime(row[43]);
                        drDocumento.DESCRIPCION   = row[44] == null ? "" : row[44].ToString();
                        drDocumento.CODIGO_IMAGEN = row[45] == null ? "" : row[45].ToString();

                        //Inicio  OT 6891
                        // Cuenta Participacion
                        CuentaParticipacionTD.CUENTA_PARTICIPACIONRow drCuentaParticipacion = new CuentaParticipacionTD().CUENTA_PARTICIPACION.NewCUENTA_PARTICIPACIONRow();
                        drCuentaParticipacion.VIDA_AHORRO = row[109] == null ? "" : row[109].ToString();
                        drCuentaParticipacion.CODIGO      = prmCUC;
                        drCuentaParticipacion.ETIQUETA    = DSC_VIDA_AHORRO;
                        prmVidaAhorro = drCuentaParticipacion.VIDA_AHORRO;
                        drCuentaParticipacion.USUARIO_CREACION = codigoUsuario;
                        drCuentaParticipacion.CODIGO_PLAN      = DSC_PLAN_VIDA_AHORRO;
                        // Fin  OT 6891

                        ParticipeTD.ParticipeRow drParticipeAsociado = null;


                        //Leer partícipe asociado
                        if (drParticipe.TIPO_PERSONA.Equals("MAN") && cucanterior != codigoProspecto)
                        {
                            drParticipeAsociado = new ParticipeTD().Participe.NewParticipeRow();

                            drParticipeAsociado.TIPO_PERSONA = "NAT";

                            drParticipeAsociado.NOMBRE1          = row[47].ToString();
                            drParticipeAsociado.NOMBRE2          = row[48] == null ? "" : row[48].ToString();
                            drParticipeAsociado.NOMBRE3          = row[49] == null ? "" : row[49].ToString();
                            drParticipeAsociado.APELLIDO_PATERNO = row[50].ToString();
                            drParticipeAsociado.APELLIDO_MATERNO = row[51].ToString();
                            drParticipeAsociado.SEXO             = row[72].ToString();
                            drParticipeAsociado.FECHA_NACIMIENTO = Convert.ToDateTime(row[53]);
                            drParticipeAsociado.TIPO_DOCUMENTO   = row[73].ToString();
                            drParticipeAsociado.NUMERO_DOCUMENTO = row[55].ToString();
                            drParticipeAsociado.TIPO_FIRMA       = "IND";
                            drParticipeAsociado.TIPO_PARTICIPE   = row[91].ToString();

                            drParticipeAsociado.ESTADO_CIVIL          = row[92].ToString();
                            drParticipeAsociado.CODIGO_AGENCIA_ORIGEN = ""; //
                            drParticipeAsociado.TIPO_PERSONERIA       = ""; //

                            drParticipeAsociado.SENAS_PARTICULARES = "";    //
                            drParticipeAsociado.FLAG_RELACION_SURA = "N";
                            drParticipeAsociado.NACIONALIDAD       = row[94].ToString();
                            drParticipeAsociado.PROFESION          = row[61] == null ? "" : row[61].ToString();
                            drParticipeAsociado.COMPANIA           = row[62] == null ? "" : row[62].ToString();
                            drParticipeAsociado.CARGO             = row[63] == null ? "" : row[63].ToString();
                            drParticipeAsociado.NUMERO_HIJOS      = row[64] == null ? 0 : Convert.ToInt32(row[64]);
                            drParticipeAsociado.LUGAR_NACIMIENTO  = row[95].ToString();
                            drParticipeAsociado.PAIS_RESIDENCIA   = row[96].ToString();
                            drParticipeAsociado.NIVEL_CARGO       = row[96].ToString();
                            drParticipeAsociado.GRADO_INSTRUCCION = row[99].ToString();
                            drParticipeAsociado.CAPACIDAD_LEGAL   = row[99].ToString();

                            drParticipeAsociado.USUARIO = codigoUsuario;
                        }
                        //Partícipes NAT
                        if (row[71].ToString().Equals("NAT"))
                        {
                            cargaContratoDA.registrarParticipe(drParticipe, drFondo, drDocumento, drCorreo, drTelefono, drboletin, drDireccion, cn, trans);
                            // OT 6891 INICIO
                            if (prmVidaAhorro.Equals("S"))
                            {
                                cargaContratoDA.RegistrarCuentaParticipacion_x_Participe(drCuentaParticipacion, prmCUC, codigoUsuario, cn, trans);
                            }
                            // FIN OT 6891 FIN
                            DataTable dtPersona = cargaContratoDA.ObtenerPersona(drParticipe, cn, trans);

                            if (dtPersona.Rows.Count == 0)
                            {
                                cargaContratoDA.registrarPersona(drParticipe, cn, trans);
                            }
                            else
                            {
                                cargaContratoDA.ActualizarPersona(drParticipe, cn, trans, "N");
                                cargaContratoDA.ActualizarParticipeXDocumento(drParticipe, cn, trans, "N");
                            }
                        }
                        //Partícipes MAN
                        else
                        {
                            //Registra dos prospectos
                            if (codigoProspecto != cucanterior)
                            {
                                String contrasenaCifrada = "";
                                String claveEncriptada   = cargaContratoDA.ObtenerClaveEncriptada(cn, trans);

                                String areaModificacion = "OPE";
                                String flagVerOperacion = "S";
                                String flagAccesoWeb    = "S";

                                contrasenaCifrada = obtenerContrasenaCifrada(claveEncriptada);
                                cargaContratoDA.registrarProspectos(drParticipe, contrasenaCifrada, areaModificacion, flagVerOperacion, flagAccesoWeb, cn, trans); //TITULAR

                                contrasenaCifrada = obtenerContrasenaCifrada(claveEncriptada);
                                cargaContratoDA.registrarProspectos(drParticipeAsociado, contrasenaCifrada, areaModificacion, flagVerOperacion, flagAccesoWeb, cn, trans); //ASOCIADO
                                /*CARGA DE LA PERSONA DEL ASOCIADO*/
                                DataTable dtPersona = cargaContratoDA.ObtenerPersona(drParticipeAsociado, cn, trans);
                                if (dtPersona.Rows.Count == 0)
                                {
                                    cargaContratoDA.registrarPersona(drParticipeAsociado, cn, trans);
                                }
                                else
                                {
                                    cargaContratoDA.ActualizarPersona(drParticipeAsociado, cn, trans, "S");
                                    cargaContratoDA.ActualizarParticipeXDocumento(drParticipeAsociado, cn, trans, "S");
                                }
                                int idParticipe         = drParticipe.CODIGO - 44670000;
                                int idProspectoTitular  = drParticipe.IDENTIFICADOR;
                                int idProspectoAsociado = drParticipeAsociado.IDENTIFICADOR;
                                cargaContratoDA.actualizarParticipe(drParticipe, cn, trans); //REGISTRO DEL PARTICIPE MANCOMUNO
                                /*CARGA DE LA PERSONA DEL TITULAR*/
                                dtPersona = cargaContratoDA.ObtenerPersona(drParticipe, cn, trans);
                                if (dtPersona.Rows.Count == 0)
                                {
                                    cargaContratoDA.registrarPersona(drParticipe, cn, trans);
                                }
                                else
                                {
                                    cargaContratoDA.ActualizarPersona(drParticipe, cn, trans, "N");
                                    cargaContratoDA.ActualizarParticipeXDocumento(drParticipe, cn, trans, "N");
                                }
                                //REGISTRAMOS LA RELACION ENTRE EL TITULAR Y EL ASOCIADO
                                decimal porcentajeTitular  = decimal.MinValue;
                                decimal porcentajeAsociado = decimal.MinValue;

                                if (row[86] != null && row[86].ToString().Equals("DIS"))
                                {
                                    porcentajeTitular  = Convert.ToDecimal(row[101]) * 100;
                                    porcentajeAsociado = Convert.ToDecimal(row[102]) * 100;
                                    if (porcentajeTitular + porcentajeAsociado != 100)
                                    {
                                        throw new Exception("La suma de los porcentajes debe sumar 100%.");
                                    }

                                    cargaContratoDA.registrarParticipeXparticipe(idProspecto, idProspecto, codigoUsuario, porcentajeTitular, cn, trans);
                                }
                                cargaContratoDA.registrarParticipeXparticipe(idProspecto, idProspectoAsociado, codigoUsuario, porcentajeAsociado, cn, trans);
                            }
                            //OT5012 INI
                            cargaContratoDA.registrarFondos(drFondo, idProspecto, codigoUsuario, cn, trans);
                            //OT5012 FIN
                        }
                        // FIN OT 6891
                        //sheet.SetValue(string.Format("B{0}",rowIndex-1),codigoProspecto);
                        cucanterior = codigoProspecto;
                        idanterior  = idProspecto;

                        row = sheet.GetRow(rowIndex++, 'C', 'Z', 4);
                        contador++;
                    }
                    catch (Exception ex)
                    {
                        throw new Exception(string.Format("Error en la línea {0}. Detalle " + ex.Message, rowIndex - 1));
                    }
                }

                trans.Commit();
                excelApplication.GetWorkBook(1).Save();
                excelApplication.Show();
            }
            catch (Exception ex)
            {
                trans.Rollback();
                excelApplication.GetWorkBook(1).Close();
                excelApplication.Close();
                throw ex;
            }
            finally
            {
                trans.Dispose();
                cn.Close();
                excelApplication.Close();
            }
        }
        public void PrepararPlantilla(string sourcePath, string savePath, string codigoUsuario)
        {
            ExcelApplication excelApplication = new ExcelApplication();
            ExcelWorkBook    workBook         = null;

            workBook = excelApplication.OpenWorkBook(sourcePath, ExcelMode.Full);

            ExcelWorkSheet sheet     = workBook.GetSheet(2);
            ExcelWorkSheet sheetCucs = workBook.GetSheet(3);

            //Obtiene los prospectos vacios
            CargaContratoDA cargaContratoDA = new CargaContratoDA();
            DataTable       dtProspectos    = cargaContratoDA.ObtenerListaProspectosVacios();

            sheetCucs.EscribirDatatable("B", 2, dtProspectos);
            DataTable dtDISTRITO = cargaContratoDA.ObtenerListaDistritos();
            int       indis      = 2;

            foreach (DataRow dr in dtDISTRITO.Rows)
            {
                sheet.SetValue(string.Format("W{0}", indis), dr["NOMBRE"]);
                sheet.SetValue(string.Format("X{0}", indis), dr["ID"]);
                sheet.SetValue(string.Format("Y{0}", indis++), dr["CIUDAD"]);
            }

            FondoDA   fondoDA           = new FondoDA();
            DataTable dtTiposDocumentos = fondoDA.ObtenerLista("TPDOCS");

            int index = 2;

            foreach (DataRow dr in dtTiposDocumentos.Rows)
            {
                sheet.SetValue(string.Format("K{0}", index), dr["DESCRIPCION_LARGA"]);
                sheet.SetValue(string.Format("L{0}", index++), dr["LLAVE_TABLA"]);
            }


            index = 2;

            DataTable dtAgenciasOrigen = fondoDA.ObtenerLista("AGEORI");

            foreach (DataRow dr in dtAgenciasOrigen.Rows)
            {
                sheet.SetValue(string.Format("H{0}", index), dr["DESCRIPCION_LARGA"]);
                sheet.SetValue(string.Format("I{0}", index++), dr["LLAVE_TABLA"]);
            }


            index = 2;
            DataTable dtFondos = cargaContratoDA.ObtenerListaFondos();

            DataRow[] drFondos = dtFondos.Select("1=1", "NOMBRE");

            foreach (DataRow dr in drFondos)
            {
                sheet.SetValue(string.Format("E{0}", index), dr["NOMBRE"]);
                sheet.SetValue(string.Format("F{0}", index++), dr["ID"]);
            }

            sheet.Hide();

            excelApplication.GetWorkBook(1).SaveAs(savePath);
            workBook.Close();

            excelApplication.Close();


            workBook = excelApplication.OpenWorkBook(savePath, ExcelMode.Full);
            excelApplication.Show();
        }
Example #15
0
        public ExcelWorkSheet AddWorksheet(ExcelCellWrapper[] rows, string worksheetName, string headerStyle, Dictionary<string, string> headerMap, bool isDao)
        {
            foreach (ExcelCellWrapper cell in rows)
            {
                ValidateStyles(cell);
            }

            ExcelWorkSheet worksheet = new ExcelWorkSheet(rows, headerMap);
            worksheet.WorkSheetName = worksheetName;
            worksheet.objects = rows;
            worksheet.headerStyle = headerStyle;
            worksheet.isDao = isDao;
            worksheets.Add(worksheetName, worksheet);
            return worksheet;
        }
Example #16
0
 public virtual void Dispose()
 {
     //Dispose EPPlus components
     ExcelWorkSheet?.Dispose();
     ExcelPackage?.Dispose();
 }
Example #17
0
        //OT 8372-PSC001
        public void generarArchivoUnico(string rutaArchivo, string rutaArchivoDestino)
        {
            StringBuilder sbLinea;

            sbLinea = new StringBuilder("");

            //StreamWriter sw = null;

            string path = rutaArchivo;

            System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            ExcelApplication excelApplication = new ExcelApplication();
            ExcelWorkBook    wb = excelApplication.OpenWorkBook(path, ExcelMode.Full);

            try
            {
                ConveniosPlanEmpleadorDA conveniosPlanEmpleadorDA = new ConveniosPlanEmpleadorDA();
                string    codigosEmpresas   = "COD_EMP_CON";
                DataTable dtCodigosEmpresas = conveniosPlanEmpleadorDA.ObtenerTablaGeneral(codigosEmpresas);
                int       numeroEmpresas    = dtCodigosEmpresas.Rows.Count;

                object[] row;
                int      rowIndex;

                string    codigoParticipacion;
                string    nombreFondo;
                DataRow[] drFondo;
                DataTable dtFondosDepositos;
                DataRow[] drFondoDeposito;
                string    idFondo;
                string    codigoTablatablaGeneralDepositos = "FONDO_EQUIV";
                string    mes  = "";
                string    anio = "";

                string    estadoFondos = "ACT";
                DataTable dtFondos     = conveniosPlanEmpleadorDA.ListarFondos(estadoFondos);

                if (numeroEmpresas == 0)
                {
                    //no hay empresas
                }
                else
                {
                    string   periodo;
                    string[] periodoElementos;
                    string   tipoMovimiento = "I";
                    string   tipoAporte     = ""; //"P"
                    double   montoAporte;
                    string   montoAporteCadena;
                    string   nombreEmpresa;
                    bool     existenRegistrosHoja = true;
                    string   codigoEmpresa        = "";
                    string   constanteCP          = "CP_";

                    // int numeroHojas = numeroEmpresas * 2 + 1;
                    int numeroHojas = 0;
                    //OT 6891 inicio
                    int cantidadHojas = wb.GetSheetCount();
                    if (cantidadHojas == 3)
                    {
                        numeroHojas = wb.GetSheetCount();
                    }
                    else
                    {
                        numeroHojas = numeroEmpresas * 2 + 1;
                    }

                    //for (int i = 1; i <= numeroEmpresas; i++)
                    for (int i = 1; i <= numeroHojas; i++)
                    {
                        //ExcelWorkSheet sheet = wb.GetSheet(i + 1);
                        //Toma a partir de la 4ta hoja porque las 3 primeras son plantillas vacías.
                        //ExcelWorkSheet sheet = wb.GetSheet(i + 1);
                        //Toma a partir de la 4ta hoja porque las 3 primeras son plantillas vacías.
                        // OT 6891
                        ExcelWorkSheet sheet = null;
                        if (cantidadHojas == 3)
                        {
                            sheet = wb.GetSheet(i);
                        }
                        else
                        {
                            sheet = wb.GetSheet(i + 1);
                        }
                        // OT 6891 fin

                        nombreEmpresa = sheet.getName();


                        if (nombreEmpresa.StartsWith(constanteCP))
                        {
                            //StreamWriter sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + nombreEmpresa + "_" + anio + mes + ".txt");



                            StreamWriter sw = null;
                            String       estadoCabecera;

                            //if (i == 1)
                            //{
                            periodo          = sheet.GetString("B8").Substring(4, 10);
                            periodoElementos = periodo.Split('/');

                            anio = periodoElementos[2].Trim();
                            mes  = periodoElementos[1].Trim();
                            //}

                            codigoEmpresa = sheet.GetString("B1").Trim();
                            DataTable dtDetalleConvenio = conveniosPlanEmpleadorDA.ObtenerDetalleConvenios(codigoEmpresa, Convert.ToInt32(mes), Convert.ToInt32(anio));

                            rowIndex = 13;//13
                            //row = sheet.GetRow(rowIndex++, 'B', 'J'); //OT 6134
                            row = sheet.GetRow(rowIndex++, 'B', 'E');


                            int cont = 0;

                            while (row[0] != null)
                            {
                                //if (row[8].ToString().Trim() == "EFE")
                                //if (row[3].ToString().Trim() == "EFE")
                                estadoCabecera = ObtienePestañaEmpresa(wb, nombreEmpresa.Substring(constanteCP.Length), numeroHojas, row[0].ToString().Substring(0, 8));


                                if (estadoCabecera == "EFE")
                                {
                                    if (existenRegistrosHoja)
                                    {
                                        codigoEmpresa = sheet.GetString("B1").Trim();

                                        //OT 8372-PSC001 INICIO

                                        //sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + nombreEmpresa.Substring(3, nombreEmpresa.Length - 3) + "_" + codigoEmpresa + "_" + anio + mes + ".txt");
                                        sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + "T" + "_"
                                                              + nombreEmpresa.Substring(3, nombreEmpresa.Length - 3) + "_" + codigoEmpresa + "_" + anio + mes + ".txt");

                                        //OT 8372-PSC001 FIN

                                        existenRegistrosHoja = false;
                                    }

                                    //codigoParticipacion = row[1].ToString().Trim();
                                    codigoParticipacion = row[0].ToString().Trim();
                                    //nombreFondo = row[7].ToString().Trim();//OT 6134
                                    nombreFondo = row[1].ToString().Trim();
                                    //montoAporte = Convert.ToDouble(row[6].ToString().Trim()); //OT 6134
                                    montoAporte = Convert.ToDouble(row[2].ToString().Trim()); //OT 6134

                                    string    filtro           = "CODIGO = '" + codigoParticipacion + "' AND FONDO = '" + nombreFondo + "' AND MONTO_CONCEPTO = " + montoAporte.ToString();
                                    DataRow[] dDetalleConvenio = dtDetalleConvenio.Select(filtro, "ID_CONVENIO");
                                    //Decimal idConvenio =0;
                                    Decimal idConvenioDetalle = 0;
                                    foreach (DataRow dr in dDetalleConvenio)
                                    {
                                        //if (idConvenio == 0|| idConvenio > 0 && idConvenio == Convert.ToDecimal(dr["ID_CONVENIO"]))
                                        if (idConvenioDetalle == 0 || idConvenioDetalle > 0 && idConvenioDetalle == Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]))
                                        {
                                            idConvenioDetalle = Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]);

                                            sbLinea.Append(codigoParticipacion.Replace("-", "").Trim());
                                            drFondo           = dtFondos.Select("NOMBRE = '" + nombreFondo + "'");
                                            dtFondosDepositos = conveniosPlanEmpleadorDA.ObtenerTablaGeneralDepositos(codigoTablatablaGeneralDepositos);
                                            idFondo           = drFondo[0]["ID"].ToString();
                                            drFondoDeposito   = dtFondosDepositos.Select("DESCRIPCION_CORTA = '" + idFondo + "'");
                                            sbLinea.Append(drFondoDeposito[0]["LLAVE_TABLA"].ToString());

                                            sbLinea.Append(anio + mes);
                                            sbLinea.Append(tipoMovimiento);

                                            tipoAporte = dr["CODIGO_CONCEPTO"].ToString().Trim();
                                            sbLinea.Append(tipoAporte);

                                            montoAporte       = Convert.ToDouble(dr["MONTO_CONCEPTO"]);
                                            montoAporteCadena = montoAporte.ToString("000000.00");
                                            montoAporteCadena = montoAporteCadena.Replace(".", "");
                                            sbLinea.Append(montoAporteCadena);

                                            sw.WriteLine(sbLinea);
                                            sbLinea.Length = 0;
                                        }
                                        else
                                        {
                                            break;
                                        }
                                    }

                                    for (int j = dtDetalleConvenio.Rows.Count - 1; j >= 0; --j)
                                    {
                                        DataRow drDetalleConvenio = dtDetalleConvenio.Rows[j];
                                        if (idConvenioDetalle == Convert.ToDecimal(drDetalleConvenio["ID_CONVENIO_DETALLE"]))
                                        {
                                            dtDetalleConvenio.Rows.Remove(drDetalleConvenio);
                                        }
                                    }
                                }

                                //row = sheet.GetRow(rowIndex++, 'B', 'J');//OT 6134
                                row  = sheet.GetRow(rowIndex++, 'B', 'E');
                                cont = cont + 1;
                            }

                            if (cont > 0)
                            {
                                if (sw != null)
                                {
                                    sw.Close();
                                }
                            }
                            existenRegistrosHoja = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                wb.Close();
                excelApplication.Close();
                System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
            }
        }
        public void Procesar()
        {
            StringBuilder sbLinea;

            sbLinea = new StringBuilder("");


            CargaSegurosSuraDA da = new CargaSegurosSuraDA();
            SqlConnection      cn = GetConnection();

            cn.Open();

            SqlTransaction trans = cn.BeginTransaction(IsolationLevel.ReadUncommitted);

            string path = sourcePath;

            System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            ExcelApplication excelApplication = new ExcelApplication();
            ExcelWorkBook    wb = excelApplication.OpenWorkBook(path, ExcelMode.Full);

            try
            {
                // traer la cantidad de empresas atraves del campo codigo
                ConveniosPlanEmpleadorDA conveniosPlanEmpleadorDA = new ConveniosPlanEmpleadorDA();
                string    codigosEmpresas   = "COD_EMP_CON";
                DataTable dtCodigosEmpresas = conveniosPlanEmpleadorDA.ObtenerTablaGeneral(codigosEmpresas);
                int       numeroEmpresas    = dtCodigosEmpresas.Rows.Count;

                object[] row;
                int      rowIndex;

                string    codigoParticipacion;
                string    nombreFondo;
                DataRow[] drFondo;
                DataTable dtFondosDepositos;
                DataRow[] drFondoDeposito;
                string    idFondo;
                string    codigoTablatablaGeneralDepositos = "FONDO_EQUIV";
                string    mes  = "";
                string    anio = "";

                string    estadoFondos = "ACT";
                DataTable dtFondos     = conveniosPlanEmpleadorDA.ListarFondos(estadoFondos);

                CargaSegurosSuraDA cargaSegurosSuraDA = new CargaSegurosSuraDA();

                if (numeroEmpresas == 0)
                {
                    //no hay empresas
                }
                else
                {
                    string   periodo;
                    string[] periodoElementos;
                    string   tipoMovimiento = "I";
                    string   tipoAporte     = ""; //"P"
                    double   montoAporte;
                    string   montoAporteCadena;
                    string   nombreEmpresa;
                    bool     existenRegistrosHoja = true;
                    string   codigoEmpresa        = "";
                    int      grabo_registro       = 0;
                    int      numeroHojas          = 0;
                    string   parametro            = "";
                    string   constanteCP          = "CP_";
                    int      cantidadHojas        = wb.GetSheetCount();
                    if (cantidadHojas == 3)
                    {
                        numeroHojas = wb.GetSheetCount();
                    }
                    else
                    {
                        numeroHojas = numeroEmpresas * 2 + 1;
                    }
                    //for (int i = 1; i <= numeroEmpresas; i++)
                    //{
                    for (int i = 1; i <= numeroHojas; i++)
                    {
                        ExcelWorkSheet sheet = wb.GetSheet(i);
                        // ExcelWorkSheet sheet = null;


                        nombreEmpresa = sheet.getName();

                        parametro = nombreEmpresa.Substring(0, 3);
                        StreamWriter sw = null;

                        //if (i == 1)
                        //{
                        //    periodo = sheet.GetString("B8").Substring(4, 10);
                        //    periodoElementos = periodo.Split('/');

                        //    anio = periodoElementos[2].Trim();
                        //    mes = periodoElementos[1].Trim();
                        //}

                        //codigoEmpresa = sheet.GetString("B1").Trim();
                        //DataTable dtDetalleConvenio = conveniosPlanEmpleadorDA.ObtenerDetalleConvenios(codigoEmpresa, Convert.ToInt32(mes), Convert.ToInt32(anio));

                        rowIndex = 13;//13
                        row      = sheet.GetRow(rowIndex++, 'B', 'O');
                        int cont = 0;

                        while (row[0] != null & parametro != constanteCP)
                        {
                            try
                            {
                                ConvenioTD.ConvenioRow drConvenio = new ConvenioTD().Convenio.NewConvenioRow();
                                drConvenio.CUC          = row[0].ToString();
                                drConvenio.MATRICULA    = row[1] == null ? "" : row[1].ToString();
                                drConvenio.NOMBRE       = row[2] == null ? "" : row[2].ToString();
                                drConvenio.NOMBRES      = row[3].ToString();
                                drConvenio.APELLIDOS    = row[4].ToString();
                                drConvenio.MONTO        = Convert.ToDouble(row[5]);
                                drConvenio.FONDO        = row[6].ToString();
                                drConvenio.ESTADO       = row[7].ToString();
                                drConvenio.PARTICIPANTE = Convert.ToDouble(row[8]);
                                drConvenio.EMPLEADOR    = Convert.ToDouble(row[9]);
                                drConvenio.ANTIGUEDAD   = Convert.ToDouble(row[10]);
                                drConvenio.SALARIO_PROM = Convert.ToDouble(row[11]);
                                drConvenio.EDAD         = Convert.ToDouble(row[12]);
                                drConvenio.BONO_ANUAL   = Convert.ToDouble(row[13]);

                                cargaSegurosSuraDA.CargaRegistroConvenio(drConvenio, cn, trans);
                                row            = sheet.GetRow(rowIndex++, 'B', 'O');
                                cont           = cont + 1;
                                grabo_registro = grabo_registro + 1;
                            }
                            catch (Exception ex)
                            {
                                throw new Exception(string.Format("Error en la línea {0}. Detalle " + ex.Message, rowIndex - 1));
                            }
                            // trans.Commit();
                        }

                        if (cont > 0)
                        {
                            if (sw != null)
                            {
                                sw.Close();
                            }
                        }
                        existenRegistrosHoja = true;
                    }
                    if (grabo_registro > 0)
                    {
                        trans.Commit();
                    }
                }
            }
            catch (Exception ex)
            {
                trans.Rollback();
                throw ex;
            }
            finally
            {
                wb.Close();
                System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
                excelApplication.Close();
            }
        }
Example #19
0
        //OT 8372-PSC001
        //public void generarArchivo(string rutaArchivo, string rutaArchivoDestino)
        public void generarArchivoXFondo(string rutaArchivo, string rutaArchivoDestino)
        {
            StringBuilder sbLinea;

            sbLinea = new StringBuilder("");

            //StreamWriter sw = null;

            string path = rutaArchivo;

            System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
            System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            ExcelApplication excelApplication = new ExcelApplication();
            ExcelWorkBook    wb = excelApplication.OpenWorkBook(path, ExcelMode.Full);

            try
            {
                ConveniosPlanEmpleadorDA conveniosPlanEmpleadorDA = new ConveniosPlanEmpleadorDA();
                string    codigosEmpresas   = "COD_EMP_CON";
                DataTable dtCodigosEmpresas = conveniosPlanEmpleadorDA.ObtenerTablaGeneral(codigosEmpresas);
                int       numeroEmpresas    = dtCodigosEmpresas.Rows.Count;

                object[] row;
                int      rowIndex;

                string    codigoParticipacion;
                string    nombreFondo;
                DataRow[] drFondo;
                DataTable dtFondosDepositos;
                DataRow[] drFondoDeposito;
                string    idFondo;
                string    codigoTablatablaGeneralDepositos = "FONDO_EQUIV";
                string    mes  = "";
                string    anio = "";

                string    estadoFondos = "ACT";
                DataTable dtFondos     = conveniosPlanEmpleadorDA.ListarFondos(estadoFondos);

                //OT 8372 INI

                DataTable dtRegistrosHoja;//almacena el contenido de una hoja del excel

                #region Definir las columnas del DataTable dtRegistrosHoja

                dtRegistrosHoja = new DataTable();

                dtRegistrosHoja.Columns.Add("CODIGO_PARTICIPACION", typeof(string));
                dtRegistrosHoja.Columns.Add("NOMBRE_FONDO", typeof(string));
                dtRegistrosHoja.Columns.Add("MONTO_APORTE", typeof(decimal));

                #endregion

                //OT 8372 FIN

                if (numeroEmpresas == 0)
                {
                    //no hay empresas
                }
                else
                {
                    string   periodo;
                    string[] periodoElementos;
                    string   tipoMovimiento = "I";
                    string   tipoAporte     = ""; //"P"
                    double   montoAporte;
                    string   montoAporteCadena;
                    string   nombreEmpresa;
                    bool     existenRegistrosHoja = true;
                    string   codigoEmpresa        = "";
                    string   constanteCP          = "CP_";

                    // int numeroHojas = numeroEmpresas * 2 + 1;
                    int numeroHojas = 0;
                    //OT 6891 inicio
                    int cantidadHojas = wb.GetSheetCount();
                    if (cantidadHojas == 3)
                    {
                        numeroHojas = wb.GetSheetCount();
                    }
                    else
                    {
                        numeroHojas = numeroEmpresas * 2 + 1;
                    }

                    //for (int i = 1; i <= numeroEmpresas; i++)
                    for (int i = 1; i <= numeroHojas; i++)
                    {
                        //ExcelWorkSheet sheet = wb.GetSheet(i + 1);
                        //Toma a partir de la 4ta hoja porque las 3 primeras son plantillas vacías.
                        //ExcelWorkSheet sheet = wb.GetSheet(i + 1);
                        //Toma a partir de la 4ta hoja porque las 3 primeras son plantillas vacías.
                        // OT 6891
                        ExcelWorkSheet sheet = null;
                        if (cantidadHojas == 3)
                        {
                            sheet = wb.GetSheet(i);
                        }
                        else
                        {
                            sheet = wb.GetSheet(i + 1);
                        }
                        // OT 6891 fin

                        nombreEmpresa = sheet.getName();


                        if (nombreEmpresa.StartsWith(constanteCP))
                        {
                            //StreamWriter sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + nombreEmpresa + "_" + anio + mes + ".txt");



                            StreamWriter sw = null;
                            String       estadoCabecera;

                            //if (i == 1)
                            //{
                            periodo          = sheet.GetString("B8").Substring(4, 10);
                            periodoElementos = periodo.Split('/');

                            anio = periodoElementos[2].Trim();
                            mes  = periodoElementos[1].Trim();
                            //}

                            codigoEmpresa = sheet.GetString("B1").Trim();
                            DataTable dtDetalleConvenio = conveniosPlanEmpleadorDA.ObtenerDetalleConvenios(codigoEmpresa, Convert.ToInt32(mes), Convert.ToInt32(anio));

                            rowIndex = 13;//13
                            //row = sheet.GetRow(rowIndex++, 'B', 'J'); //OT 6134
                            row = sheet.GetRow(rowIndex++, 'B', 'E');


                            int cont = 0;

                            while (row[0] != null)
                            {
                                //if (row[8].ToString().Trim() == "EFE")
                                //if (row[3].ToString().Trim() == "EFE")
                                estadoCabecera = ObtienePestañaEmpresa(wb, nombreEmpresa.Substring(constanteCP.Length), numeroHojas, row[0].ToString().Substring(0, 8));


                                if (estadoCabecera == "EFE")
                                {
                                    if (existenRegistrosHoja)
                                    {
                                        codigoEmpresa = sheet.GetString("B1").Trim();
                                        //OT 8372 INI
                                        //sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + nombreEmpresa.Substring(3, nombreEmpresa.Length - 3) + "_" + codigoEmpresa + "_" + anio + mes + ".txt");
                                        //OT 8372 FIN
                                        existenRegistrosHoja = false;
                                    }

                                    //codigoParticipacion = row[1].ToString().Trim();
                                    codigoParticipacion = row[0].ToString().Trim();
                                    //nombreFondo = row[7].ToString().Trim();//OT 6134
                                    nombreFondo = row[1].ToString().Trim();
                                    //montoAporte = Convert.ToDouble(row[6].ToString().Trim()); //OT 6134
                                    montoAporte = Convert.ToDouble(row[2].ToString().Trim()); //OT 6134

                                    //OT 8372 INI

                                    #region Agregar un registro al DataTable dtRegistrosHoja

                                    DataRow newRegistroHoja = dtRegistrosHoja.NewRow();

                                    newRegistroHoja["CODIGO_PARTICIPACION"] = codigoParticipacion;
                                    newRegistroHoja["NOMBRE_FONDO"]         = nombreFondo;
                                    newRegistroHoja["MONTO_APORTE"]         = montoAporte;

                                    dtRegistrosHoja.Rows.Add(newRegistroHoja);

                                    #endregion

                                    #region Se comenta código: El procesamiento de los registros ahora se hará al terminar de leer los registros de toda la hoja

                                    /*
                                     *                              string filtro = "CODIGO = '" + codigoParticipacion + "' AND FONDO = '" + nombreFondo + "' AND MONTO_CONCEPTO = " + montoAporte.ToString();
                                     *                              DataRow[] dDetalleConvenio = dtDetalleConvenio.Select(filtro, "ID_CONVENIO");
                                     *                              //Decimal idConvenio =0;
                                     * Decimal idConvenioDetalle = 0;
                                     * foreach (DataRow dr in dDetalleConvenio)
                                     *                              {
                                     *                                      //if (idConvenio == 0|| idConvenio > 0 && idConvenio == Convert.ToDecimal(dr["ID_CONVENIO"]))
                                     *  if (idConvenioDetalle == 0 || idConvenioDetalle > 0 && idConvenioDetalle == Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]))
                                     *  {
                                     *      idConvenioDetalle = Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]);
                                     *
                                     *      sbLinea.Append(codigoParticipacion.Replace("-", "").Trim());
                                     *                                          drFondo = dtFondos.Select("NOMBRE = '" + nombreFondo + "'");
                                     *                                          dtFondosDepositos = conveniosPlanEmpleadorDA.ObtenerTablaGeneralDepositos(codigoTablatablaGeneralDepositos);
                                     *                                          idFondo = drFondo[0]["ID"].ToString();
                                     *                                          drFondoDeposito = dtFondosDepositos.Select("DESCRIPCION_CORTA = '" + idFondo + "'");
                                     *                                          sbLinea.Append(drFondoDeposito[0]["LLAVE_TABLA"].ToString());
                                     *
                                     *                                          sbLinea.Append(anio + mes);
                                     *                                          sbLinea.Append(tipoMovimiento);
                                     *
                                     *                                          tipoAporte = dr["CODIGO_CONCEPTO"].ToString().Trim();
                                     *                                          sbLinea.Append(tipoAporte);
                                     *
                                     *                                          montoAporte = Convert.ToDouble(dr["MONTO_CONCEPTO"]);
                                     *                                          montoAporteCadena = montoAporte.ToString("000000.00");
                                     *                                          montoAporteCadena = montoAporteCadena.Replace(".", "");
                                     *                                          sbLinea.Append(montoAporteCadena);
                                     *
                                     *                                          sw.WriteLine(sbLinea);
                                     *                                          sbLinea.Length = 0;
                                     *                                      }
                                     *                                      else
                                     *                                              break;
                                     *                              }
                                     *
                                     *                          for (int j = dtDetalleConvenio.Rows.Count - 1; j >= 0; --j)
                                     *                          {
                                     *                                  DataRow drDetalleConvenio = dtDetalleConvenio.Rows[j];
                                     *                                  if (idConvenioDetalle == Convert.ToDecimal(drDetalleConvenio["ID_CONVENIO_DETALLE"]))
                                     *                                    dtDetalleConvenio.Rows.Remove(drDetalleConvenio);
                                     *                          }
                                     */
                                    #endregion
                                    //OT 8372 FIN
                                }



                                //row = sheet.GetRow(rowIndex++, 'B', 'J');//OT 6134
                                row  = sheet.GetRow(rowIndex++, 'B', 'E');
                                cont = cont + 1;
                            }

                            //OT 8372 INI

                            #region Procesar todos los registros de la hoja almacenadas en el DataTable dtRegistrosHoja

                            //Obtener los fondos que aparecen en el DataTable dtRegistrosHoja
                            var ListaFondos = (from DataRow dRow in dtRegistrosHoja.Rows
                                               select dRow["NOMBRE_FONDO"]).Distinct();

                            if (ListaFondos != null)
                            {
                                string filtroXNombreFondo;

                                foreach (var objNombreFondo in ListaFondos)
                                {
                                    filtroXNombreFondo = "NOMBRE_FONDO = '" + objNombreFondo + "'";
                                    DataRow[] dRegistrosXFondo = dtRegistrosHoja.Select(filtroXNombreFondo, "CODIGO_PARTICIPACION");

                                    //Crear un archivo plano .txt por cada fondo

                                    //OT 8372-PSC001 INICIO

                                    /*
                                     * sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + nombreEmpresa.Substring(3, nombreEmpresa.Length - 3)
                                     + "_" + codigoEmpresa + "_" + objNombreFondo + "_" + anio + mes + ".txt");
                                     */
                                    sw = new StreamWriter(rutaArchivoDestino + "\\" + "PCP_" + "F" + "_" + objNombreFondo + "._"
                                                          + nombreEmpresa.Substring(3, nombreEmpresa.Length - 3)
                                                          + "_" + codigoEmpresa + "_" + anio + mes + ".txt");

                                    //OT 8372-PSC001 FIN

                                    foreach (var dRegistroXFondo in dRegistrosXFondo)
                                    {
                                        #region procesar un registro

                                        string filtro = "CODIGO = '" + dRegistroXFondo["CODIGO_PARTICIPACION"]
                                                        + "' AND FONDO = '" + dRegistroXFondo["NOMBRE_FONDO"]
                                                        + "' AND MONTO_CONCEPTO = " + dRegistroXFondo["MONTO_APORTE"].ToString();
                                        DataRow[] dDetalleConvenio = dtDetalleConvenio.Select(filtro, "ID_CONVENIO");
                                        //Decimal idConvenio =0;
                                        Decimal idConvenioDetalle = 0;
                                        foreach (DataRow dr in dDetalleConvenio)
                                        {
                                            //if (idConvenio == 0|| idConvenio > 0 && idConvenio == Convert.ToDecimal(dr["ID_CONVENIO"]))
                                            if (idConvenioDetalle == 0 || idConvenioDetalle > 0 && idConvenioDetalle == Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]))
                                            {
                                                idConvenioDetalle = Convert.ToDecimal(dr["ID_CONVENIO_DETALLE"]);

                                                sbLinea.Append(dRegistroXFondo["CODIGO_PARTICIPACION"].ToString().Replace("-", "").Trim());
                                                drFondo           = dtFondos.Select("NOMBRE = '" + dRegistroXFondo["NOMBRE_FONDO"] + "'");
                                                dtFondosDepositos = conveniosPlanEmpleadorDA.ObtenerTablaGeneralDepositos(codigoTablatablaGeneralDepositos);
                                                idFondo           = drFondo[0]["ID"].ToString();
                                                drFondoDeposito   = dtFondosDepositos.Select("DESCRIPCION_CORTA = '" + idFondo + "'");
                                                sbLinea.Append(drFondoDeposito[0]["LLAVE_TABLA"].ToString());

                                                sbLinea.Append(anio + mes);
                                                sbLinea.Append(tipoMovimiento);

                                                tipoAporte = dr["CODIGO_CONCEPTO"].ToString().Trim();
                                                sbLinea.Append(tipoAporte);

                                                montoAporte       = Convert.ToDouble(dr["MONTO_CONCEPTO"]);
                                                montoAporteCadena = montoAporte.ToString("000000.00");
                                                montoAporteCadena = montoAporteCadena.Replace(".", "");
                                                sbLinea.Append(montoAporteCadena);

                                                sw.WriteLine(sbLinea);
                                                sbLinea.Length = 0;
                                            }
                                            else
                                            {
                                                break;
                                            }
                                        }

                                        for (int j = dtDetalleConvenio.Rows.Count - 1; j >= 0; --j)
                                        {
                                            DataRow drDetalleConvenio = dtDetalleConvenio.Rows[j];
                                            if (idConvenioDetalle == Convert.ToDecimal(drDetalleConvenio["ID_CONVENIO_DETALLE"]))
                                            {
                                                dtDetalleConvenio.Rows.Remove(drDetalleConvenio);
                                            }
                                        }

                                        #endregion
                                    }

                                    if (sw != null)
                                    {
                                        sw.Close();
                                    }
                                }

                                dtRegistrosHoja.Rows.Clear();
                            }

                            #endregion

                            //OT 8372 FIN

                            if (cont > 0)
                            {
                                if (sw != null)
                                {
                                    sw.Close();
                                }
                            }
                            existenRegistrosHoja = true;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                wb.Close();
                excelApplication.Close();
                System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
            }
        }
Example #20
0
        private void button2_Click(object sender, EventArgs e)
        {
            Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
            Microsoft.Office.Interop.Excel.Workbook    ExcelWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet   ExcelWorkSheet;
            ExcelApp.Visible = true;
            ExcelWorkBook    = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
            ExcelWorkSheet   = (Microsoft.Office.Interop.Excel.Worksheet)ExcelWorkBook.Worksheets.get_Item(1);

            ExcelApp.Columns[1].ColumnWidth = 25;
            ExcelApp.Columns[2].ColumnWidth = 25;
            ExcelApp.Columns[3].ColumnWidth = 15;

            string connectionString = @"Data Source=USER-ПК\USER1; Initial Catalog=ГПУ; Integrated Security=True";
            int    row = dataGridView1.RowCount + 8 + 3;

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
            }

            ExcelApp.Range _excelCells1 = (ExcelApp.Range)ExcelWorkSheet.get_Range("A1", "D1").Cells;
            _excelCells1.Merge(Type.Missing);
            _excelCells1.Value = "Отчет об отпускных";
            _excelCells1.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            _excelCells1.Font.Size           = 16;

            ExcelApp.Range _excelCells2 = (ExcelApp.Range)ExcelWorkSheet.get_Range("A3", "D3").Cells;
            _excelCells2.Merge(Type.Missing);
            _excelCells2.Value = "От кого получены бланки________________________";
            _excelCells2.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            _excelCells2.Font.Size           = 16;

            ExcelApp.Range _excelCells3 = (ExcelApp.Range)ExcelWorkSheet.get_Range("B4", "E4").Cells;
            _excelCells3.Merge(Type.Missing);
            _excelCells3.Value = "Наименование организации     ГПУ";
            _excelCells3.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            _excelCells3.Font.Size           = 16;

            ExcelApp.Range _excelCells4 = (ExcelApp.Range)ExcelWorkSheet.get_Range("A5", "D5").Cells;
            _excelCells4.Merge(Type.Missing);
            _excelCells4.Value = "Кому выданы бланки________________________";
            _excelCells4.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            _excelCells4.Font.Size           = 16;

            ExcelApp.Range _excelCells5 = (ExcelApp.Range)ExcelWorkSheet.get_Range("B7", "E7").Cells;
            _excelCells5.Merge(Type.Missing);
            _excelCells5.Value = "Наименование организации     ГПУ";
            _excelCells5.HorizontalAlignment = Microsoft.Office.Interop.Excel.Constants.xlCenter;
            _excelCells5.Font.Size           = 16;



            for (int i = 1; i < dataGridView1.RowCount + 3; i++)
            {
                (ExcelWorkSheet.Cells[8, i] as ExcelApp.Range).Font.Bold         = true;
                (ExcelWorkSheet.Cells[8, i] as ExcelApp.Range).Borders.LineStyle = true;
            }

            ExcelApp.Cells[8, 1] = "Дата начала отпуска";
            ExcelApp.Cells[8, 2] = "Дата окончания отпуска";
            ExcelApp.Cells[8, 3] = "Опускная сумма";

            ExcelApp.Cells[17, 1] = "ФИО сотрудника        " + textBox1.Text;

            for (int i = 0; i < dataGridView1.RowCount; i++)
            {
                for (int j = 0; j < dataGridView1.ColumnCount; j++)
                {
                    (ExcelWorkSheet.Cells[i + 8, j + 1] as ExcelApp.Range).Borders.LineStyle = true;
                    ExcelApp.Cells[i + 9, j + 1] = dataGridView1.Rows[i].Cells[j].Value;
                }
                //(ExcelWorkSheet.Cells[i + 8, 4] as ExcelApp.Range).Borders.LineStyle = true;
            }
        }
Example #21
0
        public void Procesar()
        {
            ExcelApplication            excelApplication = new ExcelApplication();
            CargarRetencionPagoFlujosDA da = new CargarRetencionPagoFlujosDA();
            SqlConnection cn = GetConnection();

            cn.Open();

            SqlTransaction trans       = cn.BeginTransaction(IsolationLevel.ReadUncommitted);
            DateTime       fechaActual = DateTime.Now;


            try
            {
                // Abriendo el archivo que contiene la información
                excelApplication.OpenWorkBook(sourcePath, ExcelMode.Full);
                ExcelWorkSheet sheet = excelApplication.GetWorkBook(1).GetSheet(1);

                // Obteniendo la información del archivo
                int rowIndex = 2;
                //object[] row = sheet.GetRow(rowIndex++, 'A', 'C', 4);
                object[] row = sheet.GetRow(rowIndex++, 'A', 'C');

                while (row[0] != null)
                {
                    try
                    {
                        int idOperacion = Convert.ToInt32(sheet.GetString(string.Format("A{0}", rowIndex - 1)));
                        int idParticipe = Convert.ToInt32(sheet.GetString(string.Format("B{0}", rowIndex - 1)));
                        //decimal montoRetencion = Convert.ToDecimal(sheet.GetString(string.Format("C{0}", rowIndex - 1)));
                        String  montoRetencionCadena = Convert.ToDecimal(sheet.GetString(string.Format("C{0}", rowIndex - 1))).ToString("0.00000000");
                        decimal montoRetencion       = Convert.ToDecimal(montoRetencionCadena);

                        PagoFlujosTD.PagoFlujosRow drPagoFlujos = new PagoFlujosTD().PagoFlujos.NewPagoFlujosRow();
                        drPagoFlujos.ID_OPERACION     = idOperacion;
                        drPagoFlujos.ID_PARTICIPE     = idParticipe;
                        drPagoFlujos.RETENCION        = montoRetencion;
                        drPagoFlujos.FECHA            = fechaActual;
                        drPagoFlujos.USUARIO_CREACION = codigoUsuario;

                        da.registrarPagoFlujos(drPagoFlujos, cn, trans);
                        row = sheet.GetRow(rowIndex++, 'A', 'C');
                    }
                    catch (Exception ex)
                    {
                        throw new Exception(string.Format("Error en la línea {0}. Detalle " + ex.Message, rowIndex - 1));
                    }
                    //excelApplication.GetWorkBook(1).Save();
                    //excelApplication.Show();
                }
                trans.Commit();
            }
            catch (Exception ex)
            {
                trans.Rollback();
                excelApplication.GetWorkBook(1).Close();
                excelApplication.Close();
                throw ex;
            }
            finally
            {
                trans.Dispose();
                cn.Close();
                excelApplication.Close();
            }
        }