コード例 #1
0
ファイル: FrmCampana.cs プロジェクト: marianocaratti81290/sgc
        private void btnProcesar_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Esta seguro que desea realizar la operacion", "AVISO", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (resultadoImportacion.SelectedRows.Count != 0)
                {
                    try
                    {
                        if (resultadoImportacion.Rows.Count > 0)
                        {
                            // falta declarar variables y pasarla a la capa brl para luego cargarlas en bd
                            //en bd agregar dos campos: estado (pendiente y realizado) y ver si es necesario otro para tener control de la gestion

                            string fechaOperacion = "";
                            string dni            = "";
                            string email          = "";
                            string nombre         = "";
                            string ciudad         = "";
                            string telefono       = "";
                            string userAdmin      = FrmAccesoSistema.UsuarioPermiso;


                            fechaOperacion = (resultadoImportacion[0, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());
                            dni            = (resultadoImportacion[1, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());
                            email          = (resultadoImportacion[2, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());
                            nombre         = (resultadoImportacion[3, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());
                            ciudad         = (resultadoImportacion[4, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());
                            telefono       = (resultadoImportacion[5, resultadoImportacion.CurrentCell.RowIndex].Value.ToString());


                            //    -------------------------------------Prueba----------------------------------------------------
                            resultadoImportacion.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
                            int size = -1;
                            openFileDialog1.Filter = "Text files (*.csv)|*.csv|All files (*.*)|*.*";
                            DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.

                            if (result == DialogResult.OK)                      // Test result.
                            {
                                string file = openFileDialog1.FileName;
                                try
                                {
                                    string text = File.ReadAllText(file);

                                    txtRuta.Text = file;

                                    size = text.Length;

                                    //Importar ruta del archivo csv a tblbd


                                    try
                                    {
                                        DataTable dtCampana = new DataTable("Campana");

                                        dtCampana.Columns.Add("FECHA_OPERACION", typeof(String));
                                        dtCampana.Columns.Add("DNI", typeof(String));
                                        dtCampana.Columns.Add("E-MAIL", typeof(String));
                                        dtCampana.Columns.Add("NOMBRE", typeof(String));
                                        dtCampana.Columns.Add("CIUDAD", typeof(String));
                                        dtCampana.Columns.Add("TELEFONO", typeof(String));
                                        dtCampana.Columns.Add("USUARIO_OPERACION", typeof(String));
                                        dtCampana.Columns.Add("USUARIO_GESTION", typeof(String));
                                        dtCampana.Columns.Add("SUCURSAL", typeof(String));
                                        dtCampana.Columns.Add("ORIGEN", typeof(String));
                                        dtCampana.Columns.Add("TIPO", typeof(String));
                                        dtCampana.Columns.Add("CAMPANA", typeof(String));

                                        if (System.IO.File.Exists(txtRuta.Text))
                                        {
                                            using (StreamReader Leer = new StreamReader("C:\\prueba\\Libro1.csv"))
                                            {
                                                string Linea;
                                                while ((Linea = Leer.ReadLine()) != null)
                                                {
                                                    string[] campos = Linea.Split(',');

                                                    if (campos.Length != 0)
                                                    {
                                                        //parametros que tiene la grilla
                                                        dtCampana.Rows.Add(campos[0], campos[1], campos[2], campos[3], campos[4], campos[5], cbUsuarios.Text, // usr que se le asigna esta gestion
                                                                           FrmAccesoSistema.UsuarioPermiso,                                                   //usr logeo
                                                                           cbSucursales.Text,                                                                 // sucursal asignada
                                                                           cbOrigen.Text,
                                                                           cbRelacOrigen.Text,
                                                                           cbCampañaOrigenMarketing.Text);

                                                        //guardo los campos de la grilla desde el inicio hasta el final
                                                        Brl.generarCampanaCsv(Convert.ToDateTime(campos[0]), campos[1], campos[2], campos[3], campos[4], campos[5],
                                                                              cbUsuarios.Text,                 // usr que se le asigna esta gestion
                                                                              FrmAccesoSistema.UsuarioPermiso, //usr logeo
                                                                              cbSucursales.Text,               // sucursal asignada
                                                                              cbOrigen.Text,
                                                                              cbRelacOrigen.Text,
                                                                              cbCampañaOrigenMarketing.Text);
                                                        //dni,
                                                        //email,
                                                        //nombre,
                                                        //ciudad,
                                                        //telefono,
                                                        //cbUsuarios.Text,
                                                        //userAdmin,
                                                        //cbSucursales.Text,
                                                        //cbOrigen.Text,
                                                        //cbRelacOrigen.Text,
                                                        //cbCampañaOrigenMarketing.Text);
                                                    }
                                                }

                                                if (dtCampana.Rows.Count > 0)
                                                {
                                                    resultadoImportacion.DataSource = dtCampana;
                                                }
                                                else
                                                {
                                                    MessageBox.Show("No se ingresaron datos");
                                                }
                                            }
                                        }
                                        else
                                        {
                                            MessageBox.Show("Error al realizar la operacion, los campos no se pudieron procesar");
                                        }
                                    }
                                    catch (Exception ex)
                                    {
                                        MessageBox.Show(ex.Message);
                                    }
                                }
                                catch (IOException)
                                {
                                }
                            }



                            //   ------------------------------prueba --------------------------------------------------------



                            Brl.generarCampanaCsv(Convert.ToDateTime(fechaOperacion),
                                                  dni,
                                                  email,
                                                  nombre,
                                                  ciudad,
                                                  telefono,
                                                  cbUsuarios.Text,
                                                  userAdmin,
                                                  cbSucursales.Text,
                                                  cbOrigen.Text,
                                                  cbRelacOrigen.Text,
                                                  cbCampañaOrigenMarketing.Text);
                        }
                    }

                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
        }