Example #1
0
        private void procesar(string[] lineas, DoWorkEventArgs e)
        {
            int total = lineas.Length;
            List<PadronAfiliacion> lista = new List<PadronAfiliacion>();
            for (int i = 0; i < lineas.Length; i++)
            {

                if (backgroundWorker1.CancellationPending)
                {
                    e.Cancel = true;
                }
                else
                {
                    string[] valores = lineas[i].Split(',');
                    PadronAfiliacion pa = new PadronAfiliacion();
                    //"Habilitado","Alta","Baja","NombrePlan","NroAfiliado","Apellido","Nombre","TipoSexo","TipoDoc","NroDoc","Situacion","Domicilio","Provincia","IdExterno"
                    pa.Habilitado = (valores[0] == "SI" || valores[0] == "S");
                    pa.Alta = DateTime.Parse(valores[1]);
                    if (!string.IsNullOrEmpty(valores[2]))
                    {
                        pa.Baja = DateTime.Parse(valores[2]);
                    }
                    pa.NombrePlan = valores[3];
                    pa.NroAfiliado = int.Parse(valores[4]);
                    pa.Apellido = valores[5];
                    pa.Nombre = valores[6];
                    if (valores[7].ToUpper() == "M" || valores[7].ToUpper() == "MASCULINO")
                    {
                        pa.TipoSexo = ConexionBD.getSession().Get<TipoSexo>(2);
                    }
                    else {
                        pa.TipoSexo = ConexionBD.getSession().Get<TipoSexo>(1);
                    }

                    switch (valores[8].ToUpper())
                    {
                        case "DNI":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(1);
                            break;
                        case "PASAPORTE":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(2);
                            break;
                        case "LC":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(3);
                            break;
                        case "LE":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(4);
                            break;
                        case "CI":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(5);
                            break;
                        case "OTRO":
                            pa.TipoDoc = ConexionBD.getSession().Get<TipoDocumento>(6);
                            break;
                    }
                    pa.NroDoc = int.Parse(valores[9]);
                    pa.Situacion = valores[10];
                    pa.Domicilio = valores[11];
                    pa.Provincia = valores[12];
                    pa.IdExterno = int.Parse(valores[13]);

                    //padron.PadronesAfiliaciones.Add(pa);
                    gestorPadron.guardarSinHibernate(padron,pa);
                    //gestorPadron.guardarSinVerificar(padron);

                    double valor = (double)(i + 1) / (double)total;
                    int progreso = (int)(valor * 100);
                    backgroundWorker1.ReportProgress(progreso,"Procesando "+i+" de "+total);
                    TimeSpan ts = new TimeSpan(9500);
                    Thread.Sleep(ts);
                }
            } padron.UltimoProceso = DateTime.Today;
            gestorPadron.guardar(padron);
        }
 public void guardarSinHibernate(Padron p,PadronAfiliacion pa)
 {
     string sql = "INSERT INTO PadronAfiliacion (habilitado, alta, baja, nombreplan, nroafiliado, apellido, nombre, idtiposexo, idtipodocumento, nrodoc, situacion, domicilio, provincia, idexterno,idpadron) ";
     string habilitado = pa.Habilitado.ToString();
     string alta = pa.Alta.ToShortDateString();
     string baja = pa.Baja.ToShortDateString();
     sql += "VALUES ('"+habilitado+"','"+alta+"', '"+baja+"', '"+pa.NombrePlan+"',"+pa.NroAfiliado+", '"+pa.Apellido+"', '"+pa.Nombre+"',"+pa.TipoSexo.Id+","+pa.TipoDoc.Id+", "+pa.NroDoc+", '"+pa.Situacion+"','"+pa.Domicilio+"','"+pa.Provincia+"', "+pa.IdExterno+","+p.Id+");";
     sqlBuilder.Append(sql);
     if (sqlBuilder.Length > (sqlBuilder.Capacity / 2))
     {
         ConexionBD.ejecutarSQL(sqlBuilder.ToString());
         sqlBuilder = new StringBuilder();
     }
 }