Formularios

Tengo un formulario y necesito que me busque por 5 campos de forma consecutiva y coherente. Es decir, selecciono el cliente y luego me salen sus productos, después selecciono el producto y me salen sus referencias, selecciono las referencias y me salen sus precios, etc...
¿Cómo debería hacerlo?
1

1 respuesta

Respuesta
1
Lo que planteas puede ser fabuloso para una aplicación que necesite de la navegación.
Yo crearía formularios alternativos para cada posibilidad, de manera que cuando seleccionase el cliente en el formulario de clientes, al hacer doble clic o pulsar el botón de productos, me apareciera el formulario de productos para ese cliente. A su vez, si hiciera doble clic en un producto en concreto, me apareciera otro formulario con sus referencias, y así sucesivamente.
El método para abrir un formulario, y que este se sitúe en el registro, que tu deseas es openform, y a continuación te envío la ayuda que Microsoft Access XP ofrece al respecto:
Método OpenForm
Vea también Se aplica a Ejemplo Específicos
El método OpenForm lleva a cabo la acción AbrirFormulario en Visual Basic.
Expresión. OpenForm(FormName, View, FilterName, WhereCondition, DataMode, WindowMode, OpenArgs)
Expresión Requerida. Expresión que devuelve uno de los objetos de la lista Aplicar a.
FormName Variant requerida. Una expresión de cadena que es el nombre válido de un formulario en la base de datos activa. Si ejecuta código Visual Basic que contenga el método OpenForm en una base de datos de biblioteca, Microsoft Access busca el formulario con este nombre primero en la base de datos de biblioteca y luego en la base de datos activa.
View AcFormView opcional.
AcFormView puede ser una de estas constantes AcFormView.
AcDesign
AcFormDS
AcFormPivotChart
AcFormPivotTable
AcNormal valor predeterminado. Abre el formulario en la vista Formulario.
AcPreview
Si deja en blanco este argumento, se asume la constante predeterminada (acNormal).
FilterName Variant opcional. Una expresión de cadena que es el nombre válido de una consulta en la base de datos activa.
WhereCondition Variant opcional. Una expresión de cadena que es una cláusula WHERE de SQL válida sin la palabra WHERE.
DataMode AcFormOpenDataMode opcional.
AcFormOpenDataMode puede ser una de estas constantes AcFormOpenDataMode.
AcFormAdd
AcFormEdit
AcFormPropertySettings valor predeterminado
AcFormReadOnly
Si deja en blanco este argumento (se asume la constante predeterminada, acFormPropertySettings), Microsoft Access abre el formulario en el modo de datos establecido por las propiedades PermitirEdiciones (AllowEdits), PermitirEliminación (AllowDeletions), PermitirAgregar (AllowAdditions) y EntradaDeDatos (DataEntry) del formulario.
WindowMode AcWindowMode opcional.
AcWindowMode puede ser una de estas constantes AcWindowMode.
AcDialog
AcHidden
AcIcon
AcWindowNormal valor predeterminado
Si deja en blanco este argumento, se asume la constante predeterminada
(AcWindowNormal).
OpenArgs Variant opcional. Una expresión de cadena. Esta expresión se utiliza para establecer la propiedad AbrirArgs (OpenArgs) del formulario. Este valor puede ser utilizado en el código en un módulo formulario, tal como el procedimiento de evento Abrir. A la propiedad AbrirArgs (OpenArgs) también se puede hacer referencia en macros y expresiones.
Por ejemplo, supongamos que el formulario que abre es una lista de formulario continuo de clientes. Si desea que el enfoque se traslade a un registro de cliente determinado cuando se abra el formulario, puede especificar el nombre del cliente con el argumento abrirargs, y luego usar el método FindRecord para trasladar el enfoque al registro del cliente con el nombre especificado.
Este argumento sólo está disponible en Visual Basic.
Comentarios
Para obtener más información sobre cómo funcionan la acción y sus argumentos, consulte el tema de la acción.
La longitud máxima del argumento condiciónwhere es 32,768 caracteres (al contrario que el argumento de la acción Condición WHERE en la ventana Macro, cuya longitud máxima es de 256 caracteres).
Puede dejar en blanco un argumento opcional en mitad de la sintaxis, pero debe incluir la coma del argumento. Si deja en blanco un argumento de la cola, no use una coma a continuación del último argumento que especifique.
Ejemplo
El siguiente ejemplo abre el formulario Empleados en la vista Formulario y muestra sólo los registros que contengan King en el campo Apellido. Los registros mostrados pueden ser modificados, y se pueden agregar nuevos registros.
DoCmd.OpenForm "Employees", , ,"LastName = 'King'"
Montándolo adecuadamente, puedes hacer una aplicación verdaderamente sorprendente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas