# Búsqueda avanzada

RealmJoin presenta un mecanismo de búsqueda renovado que permite acceso en tiempo real a los datos del Tenant. Esta mejora garantiza un rendimiento eficiente incluso para tenants con un gran volumen de objetos de usuario, dispositivo y grupo.

{% hint style="success" %}
La experiencia de Búsqueda avanzada está disponible para la tabla de usuarios, grupos, dispositivos y paquetes. \
Consulta la subpágina de casos de uso para ver ejemplos que te ayudarán a obtener más valor de los datos de tu Tenant.&#x20;
{% endhint %}

Las tablas pueden buscarse usando la función de búsqueda *básica* o la *avanzada* .&#x20;

{% hint style="info" %} <mark style="color:predeterminado;background-color:yellow;">**Todas las búsquedas deben confirmarse usando el**</mark><mark style="color:predeterminado;background-color:yellow;">**&#x20;**</mark>*<mark style="color:predeterminado;background-color:yellow;">**tecla Intro**</mark>*<mark style="color:predeterminado;background-color:yellow;">**&#x20;**</mark><mark style="color:predeterminado;background-color:yellow;">**o la**</mark>  <img src="https://3832142177-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FHli0RfKsBzt7a91EpdOv%2Fimage.png?alt=media&#x26;token=eadfefc7-d7b2-485c-9902-6fa6c94f8ee4" alt="" data-size="line"> <mark style="color:predeterminado;background-color:yellow;">**símbolo.**</mark>&#x20;
{% endhint %}

### Búsqueda básica

La Búsqueda básica utiliza la API de Graph para consultar directamente los datos del Tenant, proporcionando resultados en tiempo real.&#x20;

La Búsqueda básica siempre está disponible como alternativa cuando la Búsqueda avanzada no lo está. También aparece durante la carga inicial de la tabla almacenada en caché, lo que permite a los usuarios buscar de inmediato, incluso antes de que la caché esté completamente creada.

### Búsqueda avanzada

La función de búsqueda avanzada de RealmJoin utiliza almacenamiento en caché y tokenización, lo que hace que las búsquedas sean rápidas y fiables, y admite caracteres Unicode como Ø. Esta tokenización permite búsquedas parciales por nombre, por lo que una consulta como "Ma Mu" puede localizar a un usuario llamado "Maren Müller".&#x20;

Además, también se puede buscar información que no se muestra en la tabla, como códigos postales o UPN.&#x20;

<figure><img src="https://3832142177-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkrcM7cKOpXKri1kVrh%2Fuploads%2FpPoUYZyJG9anFKPfehrX%2Fimage.png?alt=media&#x26;token=f27e3c2f-2fa8-41c1-8941-f90c1e6763fe" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Asegúrate de usar el "botón Recargar" en la esquina superior derecha solo si echas en falta información añadida muy recientemente desde Entra / Intune.
{% endhint %}

### Resumen de la sintaxis de la Búsqueda avanzada

La Búsqueda avanzada permite consultar los valores disponibles de la tabla mediante una sintaxis flexible y potente. A continuación se muestran las características y reglas clave:

{% hint style="success" %}
Haz clic [aquí](https://docs.realmjoin.com/es/analizar-y-exportar/advanced-search/advanced-search-syntax) para ver más ejemplos y casos de uso de muestra
{% endhint %}

* **Búsqueda tokenizada**:\
  Los términos de búsqueda se tokenizan automáticamente para mejorar la precisión de coincidencia. Por ejemplo, escribir `lu sk` coincidirá con nombres como **Luke Skywalker**. La búsqueda siempre utiliza un enfoque de **empieza por** en lugar de una búsqueda de texto completo o de "contiene". Esto significa que una búsqueda de `walk` no **no** devolvería **Skywalker**.
* **AND lógico**:\
  Todos los filtros se combinan usando **AND**. Debe cumplirse cada condición.\
  Ejemplo: `Luke Skywalker country:france` busca a Luke Skywalker donde **country** empieza por "france".
* **Búsqueda específica por columna**:\
  Usa `column:` para buscar dentro de una columna específica.\
  Ejemplo: `country:france` busca entradas donde **country** empieza por "france".
* **Operadores**:
  * `:` → **búsqueda startsWith** \
    Ejemplo: `name:jo` coincide con "John", "Joanna", etc.
  * `=` → **igual a** \
    Ejemplo: `city=Stuttgart` coincide exactamente con "Stuttgart"
  * `!=` o `!:` → **negación**\
    Ejemplo: `city!=Stuttgart`o `city!:Stuttgart` excluye "Suttgart"
* **Comportamiento especial**:
  * **Sustitución de diéresis**:\
    Las diéresis se normalizan (p. ej., **Björn** se puede encontrar buscando **Bjorn**).
  * **Compatibilidad con Unicode**:\
    Se admiten caracteres Unicode en los términos de búsqueda.
  * **Los paréntesis () se ignoran** en las búsquedas startsWith.
  * **Búsqueda de valores vacíos**:
    * `zip:""` busca valores vacíos
    * `zip:` busca cualquier valor
* **Columnas admitidas**:
  * Pueden existir alias para los nombres de columna y se enumeran entre paréntesis
  * Tabla de usuarios:
    * `name, upn, language (lang), jobtitle (job), city, country, zip (plz), enabled, department (dept)`
      * `enabled:` → acepta `true` o `false` (`enabled:true`)
  * Tabla de grupos
    * `name`
  * Tabla de dispositivos
    * `name, operatingsystem (os), manufacturer (manu), model`

### Preguntas frecuentes

#### ¿Con qué frecuencia se almacenan los datos en caché?

La tabla se almacena en caché según una programación, actualmente establecida en 1 hora.&#x20;

#### ¿Puedo actualizar los datos manualmente?

En la esquina superior derecha de cada tabla, hay un botón para actualizar los datos almacenados en caché.

#### ¿Pueden otros usuarios usar mis datos actualizados?

La tabla está disponible para todos los usuarios en la misma instancia del portal RealmJoin. Por lo tanto, una reconstrucción activada se realizará para todos esos usuarios.&#x20;

#### ¿Qué es una instancia del portal RealmJoin?

El portal RealmJoin tiene tres instancias diferentes por motivos de equilibrio de carga y redundancia.&#x20;

#### ¿Cuánto tiempo tardará una reconstrucción/actualización de la búsqueda avanzada?

El tiempo de reconstrucción depende del tamaño del Tenant y del número de objetos. No es raro que la reconstrucción pueda tardar varios minutos. Durante la reconstrucción, solo está disponible la búsqueda básica. Todos los datos se consultan entonces directamente a través de Graph, lo que reduce las capacidades de filtrado y la velocidad.
