public List<SucesoReporteBean> obtenerListaNoAtendidosReporte(string codigoIncidente, UsuarioBean usuario)
 {
     SqlCommand cmd = null;
     cmd = new SqlCommand("obtener_registro_asignado_reporte_sp", conn);
     cmd.CommandType = CommandType.StoredProcedure;
     cmd.Parameters.AddWithValue("@codigo_incidente", codigoIncidente);
     cmd.Parameters.AddWithValue("@codigo_usuario", usuario.getCodigoUsuario());
     cmd.Parameters.AddWithValue("@nivel_acceso", usuario.getNivelAcceso());
     List<SucesoReporteBean> selecciones = new List<SucesoReporteBean>();
     try
     {
         SqlDataAdapter da = new SqlDataAdapter(cmd);
         DataTable tb = new DataTable("SucesoBean");
         da.Fill(tb);
         for (int i = 0; i < tb.Rows.Count; i++)
         {
             SucesoReporteBean seleccion = new SucesoReporteBean();
             seleccion.documento = tb.Rows[i][0].ToString();
             seleccion.codigo_usuario = tb.Rows[i][1].ToString();
             seleccion.codigoIncidente = tb.Rows[i][2].ToString();
             seleccion.recibidoSistemas = bool.Parse(tb.Rows[i][3].ToString());
             seleccion.codigoTipoSistemas = tb.Rows[i][4].ToString();
             seleccion.registroIncidente = DateTime.Parse(tb.Rows[i][5].ToString()).ToString(formatoFecha, CultureInfo.InvariantCulture);
             seleccion.reporteIncidente = DateTime.Parse(tb.Rows[i][6].ToString()).ToString(formatoFecha, CultureInfo.InvariantCulture);
             seleccion.primerInteraccion = DateTime.Parse(tb.Rows[i][7].ToString()).ToString(formatoFecha, CultureInfo.InvariantCulture);
             seleccion.codigoGrupoAsignado = tb.Rows[i][8].ToString();
             seleccion.codigoDato = tb.Rows[i][9].ToString();
             seleccion.codigoSop = tb.Rows[i][10].ToString();
             seleccion.estadoIncidente = tb.Rows[i][11].ToString();
             seleccion.codigoTierUno = tb.Rows[i][12].ToString();
             seleccion.codigoTierDos = tb.Rows[i][13].ToString();
             seleccion.codigoTierTres = tb.Rows[i][14].ToString();
             seleccion.enviadoSistmas = bool.Parse(tb.Rows[i][15].ToString());
             seleccion.fechaCierre = DateTime.Parse(tb.Rows[i][16].ToString()).ToString(formatoFecha, CultureInfo.InvariantCulture);
             seleccion.descripcionincidente = tb.Rows[i][17].ToString();
             seleccion.pais = tb.Rows[i][18].ToString();
             seleccion.estadistica = bool.Parse(tb.Rows[i][19].ToString());
             seleccion.etiqueta = tb.Rows[i][20].ToString();
             selecciones.Add(seleccion);
         } return selecciones;
     }
     catch (IndexOutOfRangeException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExpObtenerRegistro(ex.Message);
     }
     catch (ArgumentNullException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExpObtenerRegistro(ex.Message);
     }
     catch (Exception ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new Exception(ex.Message);
     }
 }
 public int insertarActualizarUsuario(UsuarioBean usuario, bool insertar)
 {
     SqlCommand cmd = null;
     string mensaje = "";
     if (insertar)
     {//True inseertar
         mensaje = "inserto";
         cmd = new SqlCommand("insertar_usuario_sp", conn);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.AddWithValue("@documento", usuario.getNumeroDocumento());
         cmd.Parameters.AddWithValue("@nombre", usuario.getNombres());
         cmd.Parameters.AddWithValue("@apellido", usuario.getApellido());
         cmd.Parameters.AddWithValue("@password", usuario.getPassword());
         cmd.Parameters.AddWithValue("@correo", usuario.getCorreo());
         
     }
     else { //false actuliza
         mensaje = "actualizo";
         cmd = new SqlCommand("actualizar_datos_usuario_sp", conn);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.AddWithValue("@id_usuario", usuario.getCodigoUsuario());
         cmd.Parameters.AddWithValue("@documento", usuario.getNumeroDocumento());
         cmd.Parameters.AddWithValue("@nombre", usuario.getNombres());
         cmd.Parameters.AddWithValue("@apellido", usuario.getApellido());
         cmd.Parameters.AddWithValue("@password", usuario.getPassword());
         cmd.Parameters.AddWithValue("@correo", usuario.getCorreo());
         cmd.Parameters.AddWithValue("@estado", usuario.getEstadoUsuario());
         cmd.Parameters.AddWithValue("@fecha_ingreso", usuario.getFechaUltimoAcceso());
     }  
     
     try
     {
         int i = cmd.ExecuteNonQuery();
         if (i == 0)
         {
             
             throw new ExInsertarRegistro("Usuario " + usuario.getNumeroDocumento() + ", No se "+mensaje+" revise datos");
         }
         else {
             return i;
         }
         
     }
     catch (ArgumentException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExInsertarRegistro("Error en  procesos");
     }
     catch (InvalidOperationException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
     catch (SqlException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         if (ex.Message.Contains("numero_documento_unique")) {
             throw new ExInsertarRegistro("Número de documento ya existe en el sistema");
         }
         throw new ExConexionBase(ex.Message);
     }
     catch (Exception ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
 }