Al finalizar esta etapa usted deberá estar familiarizado con los siguientes conceptos:
Nociones de modelado:
Constante
Técnicas de modelado:
Creación de menús desplegables
Actualización de una estructura tabular
Plantillas útiles:
Fila, Menú desplegable
En esta etapa agregaremos un campo a la estructura de datos existente (y a su correspondiente tabla en la base de datos). El nuevo campo tendrá un conjunto de posibles valores predefinidos, que el usuario podrá elegir desde un menú desplegable.
El modelado de esta etapa puede ser ejecutado en el proyecto Tutorial 4-5 que usted importó al final de la etapa previa.
Queremos que el empleado pueda diferenciar una solicitud urgente de una normal.
Para ello agregaremos un campo Urgency a la solicitud, que podrá tener dos posibles valores – Regular y Urgent. Esto se lleva a cabo usando un elemento de vista, Chooser, que permite a los usuarios seleccionar de una lista de valores predefinidos.
Veamos la ventana emergente Enter New Requisition, que ha sido actualizada en el modelo importado al finalizar la etapa previa:
Note que el área de texto Description y la etiqueta fueron movidos dentro del elemento Row llamado Description Row. Esto hace que la ventana emergente se vea más ordenada, asegurando que los elementos dentro de la fila aparecerán siempre juntos en la misma línea.
Queremos que el menú desplegable Urgency, que estamos a punto de agregar, se ubique en su propia fila:
Agrandar la ventana emergente Enter New Requisition.
Seleccione la plantilla Display/Row (), y arrástrela dentro de Enter New Requisition, por debajo de Description Row.
Llámela Urgency Row.
A continuación agregaremos el Menú emergente (junto con una etiqueta):
Agrande la Urgency Row.
Seleccione la plantilla Display/Label (), y arrástrela dentro de Urgency Row. Llámela Urgency:.
Seleccione la plantilla Display/Chooser (), y arrástrela dentro de Urgency Row. Llámela Urgency.
El modelo debería lucir ahora como sigue:
Si usted salva su trabajo, lanza la aplicación y presiona el botón New Requisition, debería poder ver la fila que acaba de modelar, la cual incluye un menú desplegable vacío, como en la siguiente captura de pantalla:
Para especificar los posibles valores para Urgency, necesitaremos un proceso de inicialización en la ventana emergente Enter New Requisition. El proceso de inicialización se llevará a cabo cada vez que la ventana emergente Enter New Requisition se abra y rellenará el menú desplegable Urgency con los posibles valores que podemos elegir:
Seleccione la plantilla Basic/Action (), y arrástrela dentro de Enter New Requisition; Llámela Initialize Urgency Chooser.
Agrande el modelo Initialize Urgency Chooser.
El proceso debe incluir una referencia al elemento Urgency, que forma parte de la ventana emergente Enter New Requisition:
Seleccione la opción Add Ancestor Reference del menú que se muestra al hacer clic derecho sobre el proceso Initialize Urgency Chooser, y seleccione Enter New Requisition.
El modelo debe lucir como sigue:
Puesto que solo necesitamos 2 valores predefinidos de urgencia, podemos definirlas usando constantes (que son elementos de datos con un valor fijo predefinido).
Seleccione la plantilla Constants/Text (), y arrástrela dentro de Initialize Urgency Chooser; Llámela Regular.
Note que el elemento de datos Regular que acabamos de agregar se ve como “Regular” en vez de Regular. Esto indica que es una Constante.“Regular” es una constante de texto (una cadena de caracteres). También hay constantes numéricas, de fecha, etc.
Los valores para un menú desplegable no necesariamente deben ser definidos mediante constantes. Los valores pueden también provenir de otro origen, como el resultado de un proceso previo, una tabla de base de datos o una hoja de cálculos.
Ahora necesitamos un conector para indicar que la constante debe llenar el menú desplegable:
Cree un conector desde la constante “Regular” hasta Enter New Requisition/Urgency Row/Urgency/<Options>.
Para especificar otro posible valor para el menú desplegable Urgency:
Seleccione la plantilla Constants/Text (), y arrástrela dentro de Initialize Urgency Chooser; Llámela Urgent.
Cree un conector desde la constante “Urgent” hasta Enter New Requisition/Urgency Row/Urgency/<Options>.
El modelo Initialize Urgency Chooser debería lucir similar al siguiente:
Si usted salva el trabajo y lanza la aplicación, el menú desplegable de la ventana emergente Enter New Requisition debe permitirle elegir entre dos posibles valores Regular y Urgent, como en la siguiente captura de pantalla:
El menú desplegable Urgency aparece ahora en la pantalla, pero el valor que elegimos no es guardado con la solicitud. Debemos agregar también un campo Urgency al registro Requisition de la base de datos.
Agrande el registro Requisition que se encuentra en Footer/Submit.
Seleccione la plantilla Data Types/Text () y ubíquela dentro de Requisition. Llámela Urgency.
Note que el registro de base de datos Requisition es reutilizado en 2 modelos (Submit y Requisition List), usted puede llevar a cabo los siguientes pasos en Requisition List/Requisition, con el mismo efecto, los cambios afectarán a ambos.
A continuación agregaremos un conector para llenar el campo Urgency en la estructura de datos Requisition con el valor que el usuario seleccionó en el menú desplegable:
Agrande el botón Submit en Footer.
Cree un conector de Enter New Requisition/Urgency Row/Urgency/<Value> a Requisition/Urgency.
El menú desplegable tiene 2 elementos de datos predefinidos, <Options> y <Value>. <Options> contiene los valores que aparecen en el menú desplegable (por lo que se trata de un elemento repetitivo). <Value> contiene el valor seleccionado actualmente.
El modelado que hemos llevado a cabo en el último paso debería lucir similar al siguiente:
Si usted salva su trabajo y lanza su aplicación en el navegador, éste debería lucir como el siguiente:
Sin necesidad de un modelado adicional, el modelo de la tabla Requisition List, muestra ahora una columna Urgency. Esto ocurre porque el registro Requisition de la base de datos es reutilizado en el modelo Requisition List. Y como el registro Requisition de la base de datos define la estructura actual de la tabla de la base de datos, la estructura de la tabla Requisitions en la base de datos ha sido actualizada con un nuevo campo, Urgency.
Los registros existentes en la base de datos anteriores a la adición del campo Urgency tendrán un valor NULL, y se mostrarán vacíos como puede ver en la captura de pantalla anterior.
Importe el proyecto ejemplo Tutorial 5-6 y utilícelo como base para el próximo paso del tutorial.
Para recordar cómo importar un proyecto ejemplo, vea la sección Importando un Proyecto Ejemplo al final de la Etapa 2.
Este proyecto ejemplo contiene toda la funcionalidad modelada hasta ahora.
Usted puede ahora proceder a la Etapa 6, en la que modelaremos el siguiente paso en el ciclo de vida de la solicitud, la aprobación de la solicitud por parte de el encargado.
To use the full functionality of this web site, JavaScript needs to be turned on.
For best results, use the Firefox browser..
Copyright © 2003-2017 - Tersus Software Ltd., All rights reserved. Terms of Use License Graphic design by EmaraDesign