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);
            }

        }