Criterios compartidos en Jitterbit App Builder
Los criterios compartidos permiten a los desarrolladores utilizar variables pasadas a través de páginas vinculadas o paneles enlazados. Estas variables se generan típicamente a través de criterios de enlace, que permiten que un enlace de página de App Builder o una relación de panel lleve claves que filtran datos en un objeto objetivo. Por ejemplo, un enlace de una página de Categorías a una página de Productos puede filtrar resultados para mostrar solo aquellos productos relevantes para la categoría elegida. Más allá de las simples cláusulas WHERE, los criterios compartidos amplían cómo se pueden utilizar estas variables en toda la aplicación.
Una URL generada con criterios compartidos típicamente sigue este formato:
https://example.dev.zudy.host/app/App%20Name/Page%20Name?FieldName~Shared=2032
Cómo usar valores de criterios compartidos
Los criterios compartidos se utilizan para acceder a valores en el contexto de ejecución actual, comportándose de manera similar a cualquier función SQL estándar. Cuando un valor de criterio compartido se incluye en una columna de objeto de datos, se trata como una cadena y se convierte en datos reales que pueden ser unidos, utilizados por controles de UI o referenciados por paneles posteriores. Por ejemplo, usar shared('EmployeeID') permite tratar esa variable como una columna estándar dentro de tu lógica.
Estos valores son altamente versátiles y se pueden aplicar en cláusulas WHERE para filtrar resultados o dentro de reglas CRUD para impulsar inserciones y actualizaciones. Si una regla se ejecuta fuera del contexto de una página (como cuando se visualizan resultados en bruto), la función devolverá el valor predeterminado 'no encontrado' para el tipo de dato especificado. Los criterios compartidos también son compatibles en eventos en segundo plano iniciados por usuarios, así como en la lógica de formato condicional. Además, la sustitución dinámica permite que los valores compartidos aparezcan en los datos de las celdas y en las etiquetas de los controles utilizando una sintaxis como {{ CompanyName }}, siempre que "Soporte de sustitución" esté habilitado en el control.
El sistema también maneja escenarios donde los criterios pueden estar ausentes o cuando se están modificando datos. Si una página o URL no contiene un criterio coincidente, el objeto de datos aún se ejecutará, siempre que el SQL pueda manejar un retorno de cadena vacía. Al vincular a una página con criterios compartidos, cualquier fila recién insertada automáticamente establecerá columnas del mismo nombre al valor compartido. De manera similar, al cambiar a un estado de edición, los criterios compartidos se establecerán automáticamente en cualquier columna nula que comparta el mismo nombre.
Función de tiempo de ejecución SQL: Compartido
En SQL, se accede a estas variables a través de la función shared(). Esta función acepta dos parámetros: el Nombre del criterio a buscar y el Tipo de dato. Es importante especificar un tipo de dato; por ejemplo, si un criterio no se encuentra y el tipo se establece en UUID o numérico, App Builder devolverá un GUID en blanco o un '0' respectivamente para asegurar que el SQL resultante no falle al comparar diferentes tipos de datos. Un ejemplo de este uso es:
SELECT CustomerId, shared('ActiveEmployeeId') FROM Customer WHERE CustomerRegionId <> shared('LastRegion', 'UUID')
Especificar valores compartidos
Los criterios compartidos se pueden definir a nivel de panel o de campo. Si bien se utilizan con frecuencia en enlaces de página, donde la URL cambia y se abre una nueva página, también son igualmente compatibles a través de la vinculación de paneles. Las páginas dirigidas proporcionan estos valores a todos los paneles 'raíz' (aquellos que no están vinculados explícitamente a otros).
Consejo
Los criterios compartidos no se limitan a enlaces de página; en las implementaciones modernas de App Builder, son un componente clave del sofisticado intercambio de datos de panel a panel.