Saltar al contenido

Herencia de Tablas

Hay una función de herencia de tabla disponible para usar desde la capa de almacenamiento de datos. La herencia de tabla le permite no requerir el uso de la App Builder conector si todo a lo que se está conectando es local. Para utilizar esta función, haga clic en el botón Edge Case disponible en la tabla desde la que desea extender, cuando trabaje en la capa de datos. Aquí es donde configura y define esta función para su uso. El campo Extends, disponible durante la configuración, muestra una lista de todos los objetos de datos públicos que están disponibles en el ambiente del servidor.

La herencia esencialmente instruye App Builder para heredar una copia de todas las columnas y registros de datos que la tabla seleccionada tiene disponibles de la fuente de datos existente. Los registros de datos aún residen en la ubicación de la fuente de datos de la tabla de la que hereda. Se supone que heredaría una tabla y luego le agregaría nuevas columnas únicas según sea necesario.

La tabla local que se crea al usar la herencia almacena todas las claves principales junto con las columnas recién agregadas. La tabla recién creada también heredará todas las validaciones, la lógica y/o los eventos de la tabla de origen seleccionada. Puede usar la tabla heredada recién creada para agregar lógica empresarial en ella o contra ella.

Por diseño, App Builder no reflejará automáticamente los cambios realizados en la tabla de origen o maestra en la tabla heredada. Consulte "Para capturar cambios de la tabla heredada" para solucionar esta situación.

Nota

Una vez que se define la herencia de tabla para una tabla determinada, ese valor no se puede modificar después de haberlo guardado.

Extendtable

Para Configurar la Herencia de Tablas

La herencia de tabla está disponible en la capa de datos. Los pasos que se describen aquí suponen que desea ampliar una tabla en la misma fuente de datos; la opción para ampliar una tabla en una fuente de datos diferente se describe en la sección de uso de ejemplo a continuación.

  1. Navegue hasta App Workbench
  2. Ubique la tabla existente que desea ampliar y haga clic en el botón Design. Por ejemplo: Customer
  3. Haga clic en el botón Edge Case
  4. Haga clic en el botón Extend
  5. Deje el valor Extends como está, esto representa la tabla nombrada que se está ampliando. Por ejemplo: Customer
  6. Asigne un Name único para la nueva tabla. Por ejemplo: CustomerExtend
  7. Haga clic en Save
  8. App Builder incorpora todas las columnas heredadas al panel Columnas
  9. Haga clic en Crear y agregue las columnas nuevas que sean necesarias

Para Capturar Cambios de la Tabla Heredada

Por diseño, la herencia de tablas no incorporará automáticamente los cambios de columnas realizados en la tabla de origen o maestra seleccionada de la que está heredando. Si desea capturar los cambios de la tabla de origen, puede utilizar el botón Importar disponible en la capa de datos.

  1. Navegue hasta App Workbench
  2. Ubique la tabla existente que desea actualizar y haga clic en el botón Design. Por ejemplo: CustomerExtend
  3. Haga clic en el botón Edge Case
  4. Haga clic en el botón Import
  5. App Builder aparecerá un mensaje que preguntará "¿Importar cambios a la tabla actual?". Haga clic en Continuar
  6. App Builder se le solicitará que realice los cambios después de importarlos y cualquier actualización de columnas será visible desde el panel Columnas. Por ejemplo: ¡Éxito!

Ejemplo de Uso

El siguiente ejemplo describe un escenario en el que podría utilizar la herencia de tabla; en este escenario, desea extender una tabla de una fuente de datos a otra. Un ejemplo en el que podría utilizar la herencia de tabla es si desea crear una tabla de parámetros de usuario a partir de un objeto de datos públicos en una fuente de datos que extiende a una fuente de datos diferente. Con este escenario, describiremos los pasos básicos que debe seguir para comenzar:

  1. Navegue hasta App Workbench, Business Layer y confirme que App Data Sources tenga la fuente de datos seleccionada donde desea que resida la tabla extendida. Por ejemplo: Northwinds
  2. Abra el registro de cualquiera de las tablas existentes en esta fuente de datos
  3. Haga clic en el botón Edge Case
  4. Haga clic en el botón Extend
  5. Seleccione la tabla que desea extender en el menú desplegable Extends. Por ejemplo: Se_User de la App Builder origen de datos
  6. Confirme que el valor Nombre es el nombre que desea que tenga la tabla extendida. Por ejemplo: Se_User_Extension
  7. Haga clic en Guardar
  8. Haga clic en Caso extremo y confirme que la tabla de extensión tenga marcada o habilitada la Compatibilidad con CRUD para Insertable, Actualizable, Eliminable
  9. Cree una nueva columna Booleana en la tabla de extensión. Por ejemplo: BooleanTest

    Booleantest

  10. Cree una Regla CRUD para actualizar todos los registros del valor booleano a 1. Asegúrese de habilitar Capa empresarial en la configuración de Propósito de la regla CRUD.

    Crud boolean

  11. Haga clic en el botón Edge Case y marque la casilla para habilitar Business Layer

  12. Haga clic en Save
  13. Haga clic en x para salir de la pantalla

    Lógica de Crud

  14. Confirme que la regla CRUD Resultados muestra todas las cuentas de usuario existentes con el campo booleano marcado como 1

  15. Haga clic en el botón Ejecutar para ejecutar la regla CRUD
  16. Navegue hasta la capa de almacenamiento de datos, hasta la tabla que extendió y confirme que la columna booleana ahora indica 1 para todas las cuentas de usuario