# InObject - función de gráfico

La función de gráfico InObject() evalúa si el objeto actual está contenido dentro de otro objeto con el ID especificado en el argumento de la función. El objeto puede ser una hoja o una visualización.

Esta función se puede usar para mostrar la jerarquía de objetos en una hoja, desde el objeto de hoja de nivel superior hasta las visualizaciones anidadas dentro de otras visualizaciones. Esta función se puede usar junto con las funciones if y ObjectId para crear una navegación personalizada en sus aplicaciones.

[Creating a custom navigation in your app using InObject function](https://play.vidyard.com/yZ7ao42dELw6Yy3wiozUNF)

Sintaxis:

InObject(id\_str)

Tipo de datos que devuelve: Booleano

En Qlik Sense, el valor booleano verdadero viene representado por -1 y el valor falso está representado por 0.

Argumentos

| Argumento | Descripción |
| --- | --- |
| id\_str | Un valor de cadena de texto que representa el ID del objeto que se está evaluando. |

Puede usar el menú Insertar para obtener los ID de objeto.

Haga lo siguiente:

1. En el modo de análisis, haga clic con el botón derecho en una visualización u hoja y, a continuación, haga clic en the Compartir icon &gt; the Insertar icon .

2. Copie el ID del objeto o de la hoja.

Limitaciones:

Esta función puede dar resultados inesperados cuando se invoca en un objeto (por ejemplo, un botón) dentro de un contenedor que es un elemento maestro. Esta limitación también se aplica a los elementos maestros del panel de filtrado, que son contenedores para varios cuadros de lista. Esto se debe a cómo los elementos maestros utilizan la jerarquía de objetos.

InObject() se utiliza a menudo en combinación con las siguientes funciones:

Funciones relacionadas

| Función | Interacción |
| --- | --- |
| [if Función de script y de gráfico](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/if.htm) | Las funciones if y ObjectId se pueden utilizar juntas para crear expresiones condicionales. Por ejemplo, las visualizaciones pueden lograr colores condicionales a través de expresiones que usan estas funciones. |
| [ObjectId - función de gráfico](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemFunctions/ObjectId.htm) | Similar a if, ObjectId también se usa con InObject para crear expresiones condicionales. |

## Ejemplo 1: funcionalidad básica

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemFunctions/InObject.htm)

#### Gráfico de expresión y resultados

El siguiente ejemplo básico demuestra cómo determinar si un objeto está contenido dentro de otro objeto. En este caso, comprobaremos si un objeto de Texto e imagen reside en un objeto de hoja utilizando el ID de la hoja como argumento.

Haga lo siguiente:

1. Abra una hoja nueva y, en el panel de Activos, abra Gráficos.

2. En Heredado, arrastre un gráfico de Texto e imagen a la hoja.

3. En el panel de propiedades, haga clic en Añadir medida.

4. Haga clic en the Expresión icon para abrir el editor de expresiones.

5. Pegue la siguiente expresión en el cuadro de diálogo:

   ```
   =InObject()
   ```

6. Modifique la expresión para incluir el ID de su hoja como una cadena de caracteres entre paréntesis.

   Por ejemplo, para una hoja con ID 1234-5678, usaría lo siguiente:

   `=InObject('1234-5678')`

7. Haga clic en Aplicar.

El valor `-1` se muestra en el gráfico, lo que indica que la expresión se evaluó como verdadera.

## Ejemplo 2: Objetos con colores condicionales

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/SystemFunctions/InObject.htm)

#### Gráfico de expresión y resultados

Vista general

El ejemplo siguiente muestra cómo crear botones de navegación personalizados que muestran diferentes colores para indicar la hoja que está abierta actualmente.

Comience creando una nueva aplicación y abriendo el Editor de carga de datos. Pegue el siguiente script de carga en una nueva pestaña: Tenga en cuenta que los datos en sí son un marcador de posición y no se utilizarán en el contenido de ejemplo.

Script de carga

```
Transactions: 

Load 
* 
Inline  
[ 
id,date,amount 
8188,'1/19/2022',37.23 
8189,'1/7/2022',17.17 
8190,'2/28/2022',88.27 
8191,'2/5/2022',57.42 
8192,'3/16/2022',53.80 
8193,'4/1/2022',82.06 
8194,'4/7/2022',40.39 
8195,'5/16/2022',87.21 
8196,'6/15/2022',95.93 
8197,'7/26/2022',45.89 
8198,'8/9/2022',36.23 
8199,'9/22/2022',25.66 
8200,'11/23/2022',82.77 
8201,'12/27/2022',69.98 
8202,'1/1/2023',76.11 
8203,'2/8/2022',25.12 
8204,'3/19/2022',46.23 
8205,'6/26/2022',84.21 
8206,'9/14/2022',96.24 
8207,'11/29/2022',67.67 
]; 
```

Crear las visualizaciones

Cargue los datos y cree dos hojas nuevas. Escriba los títulos Ventas 2022 y Ventas 2023 respectivamente.

En la hoja Ventas 2022, active las opciones avanzadas. A continuación, cree dos objetos de botón que se utilizarán para navegar entre las dos hojas.

Haga lo siguiente:

1. Agregue dos objetos de Botón a la hoja.

2. En Aspecto &gt; General, establezca la Etiqueta de cada botón a Ventas 2022 y Ventas 2023, respectivamente.

3. Organice los botones para que coincidan con la siguiente imagen.

   Ventas 2022 con dos botones de navegación

   Ventas 2022 con dos botones de navegación

   Ventas 2022Ventas 2022 con dos botones de navegación![Hoja Ventas 2022, con dos botones etiquetados como "Ventas 2022" y "Ventas 2023", respectivamente.](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Resources/Images/ObjectId_ConditionalColorButtonsArrangement.png)

4. Seleccione el botón Ventas 2022 y expanda Acciones y navegación en el panel de propiedades.

5. Haga clic en Agregar acción y, en Navegación, seleccione Ir a una hoja.

6. En Hoja, seleccione Ventas 2022.

7. Repita la configuración de esta acción de botón para vincular el botón Ventas 2023 a la hoja Ventas 2023.

8. Convierta los botones en elementos maestros haciendo clic con el botón derecho sobre ellos y seleccionando the Añadir a elementos maestros icon .

Ahora puede copiar cada botón y pegarlo en la hoja Ventas 2023, usando el mismo tamaño y disposición en la hoja.

Crear colores condicionales

A continuación, configure los botones para que sean azules si están vinculados a la hoja abierta actualmente y gris claro si están vinculados a la hoja que no está abierta.

Haga lo siguiente:

1. Abra la hoja Ventas 2022 y obtenga el ID de la hoja de la URL. Mantenga abierta la hoja Ventas 2022.

2. Haga clic en el elemento maestro del botón Ventas 2022 y seleccione Editar en el panel de propiedades.

3. En Aspecto &gt; Fondo, seleccione dar color al botón Por expresión.

4. En Expresión, pegue el siguiente texto:

   =if(InObject(''), Blue(), LightGray())

5. Entre paréntesis en la expresión anterior, pegue el ID de hoja para la hoja Ventas 2022.

El botón ahora está configurado para mostrarse en azul cuando la hoja Ventas 2022 esté abierta y en gris claro cuando no está abierta.

Repita las instrucciones anteriores para la hoja Ventas 2023, vinculando el elemento maestro del botón Ventas 2023 al ID de la hoja Ventas 2023.

Cada hoja ahora debería tener dos botones que indiquen la hoja actualmente abierta con el color azul.

La hoja Ventas 2022 de color azul para indicar que actualmente se muestra Ventas 2022

La hoja Ventas 2022 de color azul para indicar que actualmente se muestra Ventas 2022

La hoja Ventas 2022Ventas 2022 de color azul para indicar que actualmente se muestra Ventas 2022 ![Modo de análisis para la hoja Ventas 2022 con dos botones, etiquetados "Ventas 2022" y "Ventas 2023" respectivamente.](https://help.qlik.com/es-ES/cloud-services/Subsystems/Hub/Content/Resources/Images/ObjectId_ConditionalColorButtonsSales2022.png)