En las secciones siguientes se muestra cómo usar el formulario de producto y cómo programarlo. Los nombres de objeto se proporcionan para que pueda examinarlos fácilmente en la base de datos de Northwind 2.0 Starter Edition.
Uso de los formularios de productos
Los formularios de los productos se han diseñado de una manera sencilla para resaltar las mejores prácticas. Hay algunas formas avanzadas de administrar el inventario de productos como lo haría en una aplicación del mundo real.
El menú principal (frmMainMenu) tiene un botón de comando Productos que abre una lista de productos (sfrmMainMenu_ProductList) con hipervínculos para abrir el formulario de detalles del producto (frmProductDetail) para cada producto y tiene los siguientes botones de acción:
- El botón Agregar producto para abrir un nuevo formulario de producto en blanco.
- El botón Exportar a archivo para enviar la lista de productos a un archivo de la elección del usuario, como Excel, .pdf, etc.
En el formulario Detalles del producto (frmProductDetail), puede eliminar los productos no utilizados utilizando el botón Eliminar producto .
Programación de los formularios de producto
La siguiente información resume puntos importantes sobre cómo se desarrolló el formulario.
Detalles del producto (frmProductDetail) obtiene sus datos de una consulta simple, qryProductDetail, especificada en la propiedad RecordSource . Una práctica recomendada es basar un formulario de entrada de datos en una consulta simple de una tabla.
Observe el cuadro de texto, txtOrderLabel, encima del subformulario de pedidos de productos (sfrmProductDetail_OrderList). Este es un buen ejemplo de cómo aprovechar los valores de las variables actuales para personalizar la presentación del formulario.
Otra característica interesante de esta y otras formas de detalle es que aparecen y se pueden mover. Esto se puede lograr de una de estas dos maneras:
- Establecer la propiedad emergente del formulario en "Sí".
- Abrir el formulario como un diálogo: Al abrir un formulario (con una macro o código), especifique el argumento del Modo ventana como "acDialog". Tenga en cuenta que al abrir un formulario como un cuadro de diálogo, se invalidará la propiedad modal del formulario si esa propiedad se establece en "No".
Cada formulario tiene una propiedad modal. Cuando esta propiedad se establece en "yes", se le impide interactuar con ningún otro formulario mientras el formulario está abierto. Cuando se abre un formulario a través de una macro o código utilizando el modo de ventana "acDialog", el formulario es automáticamente modal, independientemente de la propiedad modal del formulario.
Observe también que el cuadro de texto Descripción del producto tiene habilitado Texto enriquecido . Esto significa que el texto se puede mostrar con diferentes fuentes y colores dentro del cuadro de texto. Dado que el modo emergente del formulario de detalles del producto es "Sí", la barra de menú contextual de formato de texto no está disponible. Puede intentar pegar texto enriquecido de un documento de Word o restablecer temporalmente la propiedad emergente del formulario a "No".
El subformulario de pedidos de productos (sfrmProductOrders) del formulario de detalles del producto en el control de subformulario denominado ctlProductOrders está enlazado a una consulta de tres tablas de los productos que se han pedido. Las filas de este subformulario se filtran para el producto actual estableciendo las propiedades LinkMasterFields y LinkChildFields del control de subformulario.