public List<UsuarioBean> obtenerUsurioByDocumento(string documento, bool tipoBusqueda)
        {
            SqlCommand cmd = null;
            if (tipoBusqueda) // true es documento
            {
                cmd = new SqlCommand("obtener_usuario_sp", conn);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@documento", documento);
            }
            else {
                cmd = new SqlCommand("obtener_usuario_id_sp", conn);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@codigo_usuario", documento);
            }
            List<UsuarioBean> usuarios = new List<UsuarioBean>();
            try
            {
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                DataTable tb = new DataTable("UsuarioBean");
                da.Fill(tb);
                for (int i = 0; i < tb.Rows.Count; i++)
                {
                    UsuarioBean usuario = new UsuarioBean();
                    usuario.setCodigoUsuario(Convert.ToInt16(tb.Rows[i][0].ToString()));
                    usuario.setNumeroDocumento(tb.Rows[i][1].ToString());
                    usuario.setNombres(tb.Rows[i][2].ToString());
                    usuario.setApellido(tb.Rows[i][3].ToString());
                    usuario.setEstadoUsuario(tb.Rows[i][4].ToString());
                    usuario.setFechaCreacion(DateTime.Parse(tb.Rows[i][5].ToString()));
                    if (!string.IsNullOrEmpty(tb.Rows[i][6].ToString()))
                    usuario.setFechaUltimoAcceso(DateTime.Parse(tb.Rows[i][6].ToString()));
                    usuario.setNivelAcceso(Convert.ToInt16(tb.Rows[i][7].ToString()));
                    usuario.setPassword(tb.Rows[i][8].ToString());
                    usuario.setCorreo(tb.Rows[i][9].ToString());
                    usuarios.Add(usuario);
                } return usuarios;
            }
            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 UsuarioBean actualizar_usuario_sistema(UsuarioBean actualizar) {
     UsuarioBean usuario = new UsuarioBean();
     mibase.abrir_conexion_base();
     try
     {
         mibase.insertarActualizarUsuario(actualizar, false);
         usuario = actualizar;
     }
     catch (ExpObtenerRegistro ex)
     {
         usuario.setApellido(null);
         usuario.setPassword(ex.Message);
     }
     catch (ArgumentOutOfRangeException ex)
     {
         string ms = ex.Message;
         usuario.setApellido(null);
         usuario.setPassword("usuario no actualizado");
     }
     catch (ExInsertarRegistro ex)
     {
         string ms = ex.Message;
         usuario.setApellido(null);
         usuario.setPassword(ex.Message);
     }
     catch (Exception ex)
     {
         string ms = ex.Message;
         usuario.setApellido(null);
         usuario.setPassword("Error en actualizacion, contactese con soporte");
     }
     finally {
         mibase.cerrar_conexion_base();
     }
     return usuario;        
 }