|
|
|
|
- Método 1: Controles Tabla relacionados por la propiedad Filter
- Creación del primer control Tabla
- Creación del segundo control Tabla
- Establecer la relación entre los controles Tabla
- Uso de consultas
- Crear una consulta
- Creación del segundo control Tabla
- Establecer la relación entre los controles Tabla
¿Cómo crear dos tablas relacionadas en cascada?
Se denominan Tablas en cascada a dos controles Tabla cuyo contenido está relacionado. Por ejemplo: - Mostrar familias de productos en un control Tabla.
- Para cada familia seleccionada en el control Tabla, mostrar los productos que le pertenecen en un segundo control Tabla.
Esta página de ayuda explica cómo crear Tablas en cascada.: Método 1: Controles Tabla relacionados por la propiedad Filter La propiedad Filter en un control Tabla permite filtrar el contenido del control con respecto a un valor. Este valor se verifica teniendo en cuenta el campo de búsqueda definido para el control Tabla. El filtro se aplica en el segundo control Tabla. El código de selección de filas activa el filtro. En este ejemplo, los clientes del archivo de datos CUSTOMER se mostrarán en el control Tabla principal. El segundo control Tabla contendrá los pedidos del cliente seleccionado en el primer control Tabla. Los pasos para crear estos 2 controles en cascada son los siguientes: - Creación del primer control Tabla.
- Creación del segundo control Tabla.
- Relación entre los dos controles Tabla.
Creación del primer control Tabla - Cree una ventana si es necesario.
- En la cinta de opciones, en la pestaña "Creación", en el grupo "Datos", despliegue "Tabla y List Box" y seleccione "Tabla (Vertical)".
Haga clic en la ubicación en la que desea crear el control.
- El asistente de creación del control Tabla se abre.
- Seleccione la opción "Mostrar datos de un archivo o una consulta existente".
Pase a la etapa siguiente del asistente.
- Seleccione el archivo asociado al control Tabla. En nuestro ejemplo, el archivo CUSTOMER.
Pase a la etapa siguiente del asistente. - Seleccione los campos que se mostrarán en el control Tabla. En nuestro ejemplo, los campos CustomerName, Company, ZipCode y City.
Pase a la etapa siguiente del asistente. - Seleccione la clave de búsqueda. En nuestro ejemplo, el campo CustomerNum.
Pase a la etapa siguiente del asistente. - Dado que las otras etapas no son necesarias para nuestro ejemplo, puede salir del asistente.
- Valide. El control Tabla se crea automáticamente en la ventana.
- Cambie la altura del control con los controladores de tamaño.
Creación del segundo control Tabla El segundo control Tabla se creará de la misma manera. - En la cinta de opciones, en la pestaña "Creación", en el grupo "Datos", despliegue "Tabla y List Box" y seleccione "Tabla (Vertical)".
Haga clic en la ubicación en la que desea crear el segundo control Tabla (debajo del primero).
- El asistente de creación del control Tabla se abre.
- Seleccione la opción "Mostrar datos de un archivo o una consulta existente".
Pase a la etapa siguiente del asistente.
- Seleccione el archivo asociado al control Tabla. En nuestro ejemplo, el archivo de datos CUSTOMER.
Pase a la etapa siguiente del asistente. - Seleccione los campos que se mostrarán en el control Tabla. En nuestro ejemplo, vamos a seleccionar los campos OrderNum, OrderDate, TotalBT y TotalIOT.
Pase a la etapa siguiente del asistente. - Seleccione la clave de búsqueda. Atención, la clave de búsqueda debe ser el campo que establece la relación con el primer control Tabla. En nuestro ejemplo, este campo es CustomerNum.
Pase a la etapa siguiente del asistente. - Dado que las otras etapas no son necesarias para nuestro ejemplo, puede salir del asistente.
- Valide. El control Tabla se crea automáticamente en la ventana.
Establecer la relación entre los controles Tabla Para establecer la relación entre los controles Tabla, es necesario: - Asegurarse de que el primer control Tabla devuelva el valor que se utilizará para filtrar el segundo control Tabla. Esto se puede definir en la descripción del control Tabla (pestaña "Contenido", opción "Campo almacenado"). En nuestro ejemplo, el campo almacenado será CustomerNum.
- Abra la descripción del primer control Tabla (opción "Descripción de la tabla" del menú contextual del control).
- En la pestaña "Contenido", seleccione el campo que desea almacenar (opción "Campo almacenado"). En nuestro ejemplo, esta opción corresponde al campo CustomerNum:
- Valide la ventana.
- Habilitar el filtro en el segundo control Tabla con la propiedad Filter.
- Seleccione el primer control Tabla y abra los eventos del control (tecla F2).
- Vaya al evento "Selección de una fila" en el control Tabla e introduzca el siguiente código:
SecondTableName.Filter = FirstTableName En nuestro ejemplo, el código correspondiente es:
Los dos controles Tabla están relacionados. Pruebe la ventana (haga clic en GO en los botones de acceso rápido). Seleccione un cliente en el primer control Tabla. El resultado aparece inmediatamente.
Este método utiliza una consulta para crear y filtrar los registros del segundo control Tabla. En este ejemplo, los clientes del archivo de datos CUSTOMER se mostrarán en el control Tabla principal. El segundo control Tabla contendrá los pedidos del cliente seleccionado en el primer control Tabla. Los pasos para crear estas 2 tablas en cascada son los siguientes: - Creación del primer control Tabla (este paso es igual al del primer método).
- Creación de una consulta con filtro para seleccionar los registros que corresponden a la fila seleccionada en el primer control Tabla. Esta consulta se utilizará como fuente para el segundo control Tabla.
- Creación del segundo control Tabla.
- Relación entre los dos controles Tabla.
Creación del primer control Tabla - Cree una ventana si es necesario.
- En la cinta de opciones, en la pestaña "Creación", en el grupo "Datos", despliegue "Tabla y List Box" y seleccione "Tabla (Vertical)".
Haga clic en la ubicación en la que desea crear el control.
- El asistente de creación del control Tabla se abre.
- Seleccione la opción "Mostrar datos de un archivo o una consulta existente".
Pase a la etapa siguiente del asistente.
- Seleccione el archivo asociado al control Tabla. En nuestro ejemplo, el archivo CUSTOMER.
Pase a la etapa siguiente del asistente. - Seleccione los campos que se mostrarán en el control Tabla. En nuestro ejemplo, los campos CustomerName, Company, ZipCode y City.
Pase a la etapa siguiente del asistente. - Seleccione la clave de búsqueda. En nuestro ejemplo, el campo CustomerNum.
Pase a la etapa siguiente del asistente. - Dado que las otras etapas no son necesarias para nuestro ejemplo, puede salir del asistente.
- Valide. El control Tabla se crea automáticamente en la ventana.
- Cambie la altura del control con los controladores de tamaño.
Crear una consulta Los pasos para crear una consulta SQL con filtro son los siguientes: - Haga clic en
en los botones de acceso rápido. - En la ventana que se muestra, haga clic en "Consultas".
- El asistente de creación de consultas se abre.
- Seleccione crear una consulta de selección (opción "Selección (SELECT)").
Pase a la etapa siguiente del asistente. - La ventana de descripción de la consulta se abre.
- Defina un nombre y un título para la consulta:
- En la sección izquierda de la ventana de descripción, seleccione los campos del archivo de datos que se utilizarán (en nuestro ejemplo, el archivo ORDER y los campos CustomerNum, OrderNum, OrderDate, TotalBT y TotalIOT).
- Haga doble clic en los nombres de los campos para agregarlos a la lista de campos de la consulta:
- Para aplicar el filtro (selección), seleccione el campo CustomerNum en la sección central y luego, en la sección derecha del editor, haga clic en "Condición de selección".
- En el menú que aparece, seleccione "Nueva condición...".
- En la ventana que aparece:
- Seleccione la operación ("es igual a" en nuestro ejemplo).
- Seleccione "Parámetro" para poder pasar un valor seleccionado en el primer control Tabla a la consulta.
- Valide. La ventana de descripción de la consulta se actualiza:
- Valide la ventana de descripción de la consulta. La consulta se muestra en el editor:
- Guardar la consulta (Ctrl + S).
Creación del segundo control Tabla Para crear el segundo control Tabla: - Cree una ventana si es necesario.
- En la cinta de opciones, en la pestaña "Creación", en el grupo "Datos", despliegue "Tabla y List Box" y seleccione "Tabla (Vertical)".
Haga clic en la ubicación en la que desea crear el control.
- El asistente de creación del control Tabla se abre.
- Seleccione la opción "Mostrar datos de un archivo o una consulta existente".
Pase a la etapa siguiente del asistente.
- Seleccione la consulta creada anteriormente para asociarla al control Tabla. En nuestro ejemplo, la consulta QRY_CustomerOrder.
Pase a la etapa siguiente del asistente. - Seleccione los campos que se mostrarán en la tabla. En nuestro ejemplo, los campos OrderNum, OrderDate, TotalBT y TotalIOT están seleccionados.
Pase a la etapa siguiente del asistente. - Dado que las otras etapas no son necesarias para nuestro ejemplo, puede salir del asistente.
- Valide. El segundo control Tabla se crea automáticamente.
Establecer la relación entre los controles Tabla Para establecer la relación entre los controles Tabla, es necesario: - Asegúrese de que el primer control Tabla devuelva el valor que se utilizará para filtrar el contenido de la consulta. Esto se puede definir en la descripción del control Tabla (pestaña "Contenido", opción "Campo almacenado"). En nuestro ejemplo, el campo almacenado será CustomerNum.
- Abra la descripción del primer control Tabla (opción "Descripción de la tabla" del menú contextual del control).
- En la pestaña "Contenido", seleccione el campo que desea almacenar (opción "Campo almacenado"). En nuestro ejemplo, esta opción corresponde al campo CustomerNum:
- Valide la ventana.
- Inicializar el parámetro de la consulta utilizada por el segundo control Tabla.
- Seleccione el primer control Tabla y abra los eventos del control (tecla F2).
- Vaya al evento "Selección de una fila de..." para introducir el siguiente código:
QueryName..ParameterName = FirstTableName HExecuteQuery(QueryName) TableDisplay(SecondTableName) En nuestro ejemplo, el código correspondiente es:
Los dos controles Tabla están relacionados. Pruebe la ventana (haga clic en GO en los botones de acceso rápido). Seleccione un cliente en la primera tabla. El resultado aparece inmediatamente.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|