Creacion de Menus Dinamicos en VFP

Como puedo crear menús dinámicos en Visual Fox pro, encontré unas rutinas de MENU CREATOR, pero no puedo hacer que mis formularios se ejecuten desde el menu creado en MENU CREATOR, con los accesos que definí para el usuario

1 respuesta

Respuesta
1

Lo más simple para realizar menus dinámicos es creando una tabla que tenga 4 campos; indicando lo siguiente:

1. Campo1: CodigoPropio c(3)

2. Campo2: CodigoaBuscar c(3)

3. Campo3: Item c(40)

4. Campo4: Accion c(50)

Entonces:

1. En el campo1 tendrías un código del ítem.

2. En el campo2 pones un código de los Item relacionados a buscar al hacer clic sobre éste item.

3. En el campo3 tendrías El nombre del Item, (Archivo, Informe, Edición, etc.).

4. En éste campo4 escribes la acción a realizar al hacer clic en éste registro.

Veamos un ejemplo de como estarían cargados los campos:

Campo1, Campo2, Campo3, Campo4

100, 101, Archivo, <<vacío>>.

100, 201, Informes, <<vacío>>.

100, 301, Edición, <<vacío>>.

101, 100, Volver a menú principal.., <<vacío>>.

101, 000, Clientes, DO FORM Clientes.

101, 000, Proveedores, DO FORM Proveedores.

201, 100, Volver a menú principal.., <<vacío>>.

201, 100, Informe de Ventas, DO Informe.

301, 100, Volver a menú principal.., <<vacío>>.

301, 100, Modificar Datos del Cliente, DO FORM cambioscliente

Podrías crear una grilla en el escritorio en el que se muestre solamente los datos del campo3 (es decir solo los items) y mediante el comando SQL-SELECT o SET FILTER filtras por ejemplo, suponiendo que usas FILTER.

1. Cuando inicia el formulario debe verse el menú principal: entonces la orden sería; SET FILTER TO Campo1=100. Es decir que solo se vería en la lista -siguiendo con el ejemplo anterior- Archivo, Informe, Edición.

2. Cuando haces clic o doble clic en alguna de las opciones -supongamos que lo haces sobre Archivos- el sistema debe leer el campo4 que corresponde a la acción a realizar, pero si esta estubiese vacía haría un SET FILTER según el campo2... entonces en éste caso, viendo que la acción a realizar está vacía lee en el campo2 el valor 101 y hace un SET FILTER TO campo1=101, con lo que verías -Volver al menú principal, Clientes, Proveedores-

3. En cambio si al hacer clic sobre un item éste contuviese información en el campo de acción -campo4- leer la acción a realizar y ejecutarla como tal.

...

Bueno es la idea para hacer un menú simple pero práctico de manipular y actualizar;

Buenas tardes, creo entender, pero tengo algunas dudas:

1- Así como me describes el proceso ya no cargaría un menú tipo VFP, me refiero a que ya no sería como "DEFINE MENU ... IN FORMNAME"?

Efectivamente con él método que te inciaba generarias menues prácticos y rápidos pero ya no sería con el método propio del FOXPRO es decir DEFINE MENU...

Mira el siguiente enlace de otro usuario a ver si puede ser de mayor utilildad.

http://comunidadvfp.blogspot.com/2004/11/menu-dinamico.html 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas