Reglas predeterminadas en Jitterbit App Builder
Las reglas Predeterminadas son un propósito de regla que se utiliza para completar automáticamente uno o más campos con un valor. Por ejemplo, una regla Predeterminada puede establecer un campo de Fecha a la fecha actual, o establecer un campo de Precio en función de un valor buscado en una tabla relacionada.
Se puede encontrar un ejemplo completo usando valores de demostración para crear una regla Predeterminada y luego registrarla en un panel en la sección Reglas predeterminadas de Introducción a App Builder - Lección 7: Más sobre reglas.
Crear una regla predeterminada
-
En App Workbench > Rules, haz clic en + Rule. Se abre el Rule Builder.
-
Siguiendo las convenciones de nomenclatura de App Builder, ingresa un nombre para la regla, usando el patrón
NombreTabla (Predeterminado NombreColumna). -
En el campo Purpose, desplázate para localizar la opción Default bajo Edge Case y selecciónala.

-
En el campo Target, selecciona la tabla u objeto de negocio al que deben aplicarse los valores predeterminados. Consulta Dirigirse a una tabla o un objeto de negocio a continuación para decidir cuál usar.
-
Haz clic en Create. App Builder tardará algunos momentos en crear la regla.
-
En la pestaña Columns, añade la lógica que determina el valor predeterminado para cada columna que deseas establecer como predeterminada. Por ejemplo, podrías hacer clic en + Column e ingresar la expresión
Now()para establecer un campo de fecha a la fecha y hora actual usando la función de base de datos Now(), o añadir una tabla relacionada en la pestaña Tables y seleccionar una de sus columnas para buscar un valor de ella. -
Haz clic en Results en el panel Rule para confirmar que la regla devuelve el valor que esperas.
Dirigirse a una tabla o un objeto de negocio
Una regla Predeterminada debe dirigirse a su tabla base o a un objeto de negocio construido en esa misma tabla. Esta elección determina su comportamiento:
-
Cuando el destino es una tabla: Una regla Predeterminada que se dirige a una tabla solo puede establecer como predeterminadas columnas físicas, no columnas calculadas, pero se aplica a cada objeto de negocio construido en esa tabla. Por ejemplo, una regla Predeterminada dirigida a la tabla
Orderpodría establecerQuantitycomo1yPricecomo5. Si un objeto de negocio construido enOrdertiene una columna calculada comoLineTotal(Quantity*Price), esa columna muestraNULLhasta que se guarde el registro, ya que la base de datos solo la calcula una vez que se escriben los valores predeterminados. -
Cuando el destino es un objeto de negocio: Una regla Predeterminada que se dirige a un objeto de negocio, como
Order (Source), puede establecer como predeterminadas tanto columnas físicas como columnas calculadas en memoria, y sus valores calculados se recalculan en vivo en la interfaz de usuario a medida que el usuario cambia campos relacionados, incluso antes de guardar el registro. Por ejemplo, siQuantityse establece de forma predeterminada a1,Pricese establece a5, y una columnaLineTotalcalculada (Quantity*Price) se establece como predeterminada junto con ellas,LineTotalinicialmente muestra5. CambiarQuantitya2antes de guardar recalcula inmediatamenteLineTotala10. Después de guardar, editarQuantitynuevamente a3recalculaLineTotala15.
Un objeto de negocio aplica los valores de una regla Predeterminada solo para las columnas que selecciona. Si una regla Predeterminada registrada en una tabla se dirige a una columna que un objeto de negocio construido en esa tabla no selecciona, el valor predeterminado no se aplica al insertar a través de ese objeto de negocio, y App Builder muestra una advertencia. Para asegurar que se apliquen los valores predeterminados, añade las columnas faltantes al objeto de negocio, o dirige la regla al objeto de negocio en lugar de a la tabla y registra la regla en él.
Nota
Una regla Predeterminada que se dirige a una tabla puede registrarse en esa tabla o en cualquier objeto de negocio construido en ella. Una regla Predeterminada que se dirige a un objeto de negocio específico solo puede registrarse en ese mismo objeto de negocio, no en la tabla subyacente ni en un objeto de negocio diferente construido en la misma tabla. En cualquier caso, el destino de la regla y todo aquello en lo que la registres debe estar relacionado; por ejemplo, una regla Predeterminada para datos de Order no puede registrarse en la tabla Customer ni en un objeto de negocio Customer.
Registrar una regla Predeterminada
Una regla Predeterminada no tiene efecto hasta que se registra, ya sea en la tabla que apunta o en un panel construido sobre el objeto de negocio que apunta.
En una tabla
Registrar una regla Predeterminada en su tabla la aplica a cada objeto de negocio construido sobre esa tabla:
-
En App Workbench > Tables, ubica y selecciona la tabla.
-
Haz clic en More > Defaults. Se abre el diálogo Defaults.
-
Haz clic en Register. Se abre el diálogo Default.
-
En el campo Type, selecciona Rule.
-
En el campo Rule, selecciona la regla Predeterminada que creaste.
-
En el campo Binding, selecciona un tipo de vinculación. Consulta Vinculación a continuación para obtener más información.
-
Haz clic en Save.
En un panel
Registrar una regla Predeterminada en un panel la aplica solo dentro de ese panel:
-
Navega al panel donde deseas registrar la regla, de una de dos formas:
-
Desde la vista previa de la app, navega a la página que contiene el panel y abre el Live Designer haciendo clic en el icono de menú en la esquina superior derecha y seleccionando Live Designer.
-
Desde el App Workbench, abre la pestaña Pages y selecciona la página que contiene el panel.
-
-
Si estás en Live Designer, selecciona el panel en la vista previa para llenar el diseñador con sus opciones, luego haz clic en More > Defaults. Si estás en App Workbench, selecciona el panel en Page Panel Layout, luego haz clic en More > Defaults. Se abre el diálogo Defaults:

-
Haz clic en Register. Se abre el diálogo Default:
-
En el campo Type, selecciona Rule.
-
En el campo Rule, selecciona la regla Predeterminada que creaste.
-
En el campo Binding, selecciona un tipo de vinculación. Consulta Vinculación a continuación para obtener más información.
-
(Opcional) En el campo Order, ingresa un número para determinar el orden en que se ejecutará la regla, si el panel tiene más de una regla registrada. Si el panel solo tiene una regla, el valor predeterminado es
10. -
Mantén marcada la casilla Active para aplicar la regla. Si deseas desactivarla sin eliminarla, deselecciona esta casilla.
-
Haz clic en Save.
Actualiza la página. Para probar si la regla Predeterminada funciona, crea un nuevo registro en esa tabla o panel. El campo debe completarse automáticamente.
Vinculación
La vinculación de una regla Predeterminada determina qué datos del registro existente se usan para calcular el valor predeterminado:
-
La vinculación implícita utiliza la clave principal del registro en memoria, por lo que siempre coincide con exactamente un registro.
-
La vinculación explícita coincide en una columna que no sea la clave principal, como una clave foránea. Por ejemplo, podrías vincular explícitamente un valor predeterminado
FreightalShipperIDseleccionado en un panelOrder, de modo queFreightse establezca por defecto según el transportista que el usuario seleccione.
Advertencia
Una vinculación explícita debe configurarse de modo que su regla devuelva exactamente un registro para un conjunto determinado de criterios de vinculación; de lo contrario, App Builder lanza un error "demasiadas filas". Si encuentras este error, intenta agregar una cláusula DISTINCT a la regla; si eso no reduce los resultados a un registro, reformula la consulta de la regla para que lo haga.
Consulta Vinculación implícita y explícita para obtener más información.
Cuándo se ejecutan las reglas Predeterminadas
-
En un evento New (cuando se crea un registro por primera vez), App Builder ejecuta la lógica predeterminada completa antes de insertar el registro en la base de datos, inicializando columnas físicas para cada regla Predeterminada y columnas calculadas para reglas que apunten a un objeto de negocio.
-
En un evento de Actualización (cuando se edita un registro existente), App Builder no vuelve a aplicar los valores de columna iniciales de una regla de Valor predeterminado, por lo que no sobrescribirá un valor que el usuario ya ha modificado. Sin embargo, las columnas calculadas de valores predeterminados que apunten a un objeto de negocio se recalculan cada vez que cambia un campo del que dependen, tanto antes como después de guardar el registro por primera vez. Los valores predeterminados vinculados explícitamente se comportan de la misma manera: se ejecutan nuevamente cada vez que cambia su campo vinculado, independientemente de si el registro ya se ha guardado.
