FoxPro/Visual FoxPro - Consulta Forms

   
Vista:

Consulta Forms

Publicado por Pablo (Argentina) (433 intervenciones) el 12/11/2009 13:51:39
Hola Amigos del Foro, bueno tengo una consulta a ver como se maneja el tema y como puedo hacer, resulta que tengo un menu con multiples opciones que cuando ejecuto una opcion abro un formulario de carga de datos por ej. y en el cual utilizo varias tablas para alamcenar los mismos.
Pero que es lo que me esta ocurriendo ultimamente, resulta ser que cuando estoy cargado por ahi me sucede que me olvdide de cargar el codigo de un producto de la tabla productos y para eso necesito SIN cerrar el formulario de carga de ventas, poder ir al menu y ejecutar el formulario de productos y cargar el producto y que despues este me aparezaca en las opciones de la carga de ventas ¿pido muhco, no?, ja, bueno aunque sea quiero saber como hacer para que no me de error de las tablas en uso o que tiene conflicto que es lo que me sucede actualmene.
O sea ahora para poder cargar un producto tengo que cerrar el formulario de carga de ventas sino me da error con las tablas y demas ¿que puedo hacer?

Muchas Gracias a todos.

Pablo - Argentina
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta Forms

Publicado por Chucho (66 intervenciones) el 12/11/2009 14:31:34
Hola:
Segun entiendo que al abrir un formulario, no podes elegir ninguna opcion del menu . Esto me parece que sucede porque el formulario en cuestion es Modal ( prop. WindowType).

La solución sería que el form no sea Modal, pero puede ocurrir que el usuario elija de nuevo la opción que lo llevó al formulario abierto, con lo que tendría dos instancias o más del mismo form. Para solucionar esto tendrías que modificar las opciones del menú de manera que UNA opción (y no todo el menú) quede inactiva (grisada) cuando ejecutes un formulario a partir de esta opción.

Si hiciste el menu con el diseñador de menu, verás que en el diseñador cada prompt (opcion) de un menu despleglable tiene al final un botoncito (dice Options) para acceder a la ventana de opciones. Ahi fijate que dice SKIP FOR y una caja de texto, en ella tenes que escribir una condición para que VFP se "saltee" esa opción si ya la elegiste para abrir el form. La condición sería : wExist( "nombreform").

La función wExist retorna verdadero si el formulario "nombreform" ya está en pantalla.
El nombre del formulario se lo asignas a la propiedad "name" del form.

Saludos

Javier (Jujuy-Argentina)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Forms

Publicado por Pablo (Argentina) (433 intervenciones) el 12/11/2009 14:47:09
Hola Javier, NO, ese no es el problema, el menu anda todo bien y lo tengo hecho como vos decis, el problema radica en que si YA tengo abierto el form de carga de Ventas y voy al menu de nuevo para abrir otro form dejando ABIERTO el form de carga de ventas y quiero cargar en el form de Proveedores me da error en las tablas porque sucede que ya las tengo abierta en el form de carga de ventas y cuando abro el form de proveedores se pudre todo, jajaj, ¿me explico?, lo que quiero es poder abrir varios forms sin tenes que cerrar lo que ya tengo abierto porque me falta algun dato que tendria que haber cargado con anterioridad.

A Ver un ejemplo, esto cargando en el form una VENTAS y o casualidad me olvide de cargar un ARTICULO, que es lo que quiero hacer: Dejo Abierto el form VENTAS, voy al MENU elijo ARTICULOS y que me abra el form y me deje cargar el Articulo, cierro el form de Articulos y sigo cargando VENTAS ¿Ahora me explico mejor?. Lo que me sucede y quiero arreglar es que tengo problemas con las tablas porque en muchos forms son las mismas y me da error, como lo puedo manejar a eso.

Desde ya muchas gracias por tu ayuda.

Pablo - La Pampa - Argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Forms

Publicado por es_binario (757 intervenciones) el 12/11/2009 16:10:25
Esta raro, que te de problemas, apesar de que uses las mismas tablas no deberia darte problemas, ya que foxpro utiliza numeros de cursor consecutivos a parte del alias con los que tu los llamas, es decir ventas, detalle de venta.

creo que el problema es que usas mucho la intruccion filter y la instruccion set order del viejo codigo de foxpro, muy eficiente.

tienes 2 opciones a mi parecer una seria crear una clase dar de alta articulos y crear conjuntos de formularios, los "SET FORMS" y posteriormete agregar la clase donde la ocupes

la segunda, usar los formularios como los usas pero en el caso de las ventas utilizar una vista o un cursor para cargar la informacion, que deseas mostrar al usuario, todo basado en instrucciones sql, y de esta manera terminarian tus problemas.

Dale una checada al pv de farmacia que te mande hace un buen y checa los metoso de refresca_grilla

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Forms

Publicado por Chucho (66 intervenciones) el 12/11/2009 16:14:08
Hola pampeano!: Aj!! Ahora si entiendo (creo)
Según veo en cada form abres las tablas necesarias para cada proceso...(decime que si xfas)

Te cuento como hago los proyectos. Tengo un .prg principal en donde abro todas las tablas del sistema y creo los indices, en entornos que no son multiusuario ( no me gustan las base de datos y espero que no salga nadie a putearme ) y las relaciones entre las tablas. De esta manera en los forms, procesos y demás , solo utilizo el SELECT para indicar con cual tabla quiero laburar. A los forms les saco las tablas del entorno de datos.

Si esta es la solución, ojalá que no tengas que hacer demasiados cambios.

Suerte.

Javier
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio

Consulta Forms

Publicado por Mauricio (1368 intervenciones) el 12/11/2009 18:02:46
Tratare de aportar ideas para que no desarmes lo que tienes hecho hasta ahora:
*-- Si tienes abierto el FORM Ventas y deseas abrir el FORM proveedores por ejemplo, puedes hacer algo como esto:
Estando en el Ventas preguntas si existe un determinado proveedor, en caso que no exista no tienes porque abrir el FORM proveedores, mejor crea un FORM tipo modal y una copia de proveedores, sin mayores controloles o botones, este solo lo usaras para incorporar el proveedor que no existe nada mas, en este nuevo formulario no abriras ni cerraras ninguna tabla, espero me entiendas la idea...
Puedo ampliarte la idea.....
Espero como dijo Chucho nos ser puteado o insultado por tratar de ayudar!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Forms

Publicado por alberto (399 intervenciones) el 12/11/2009 20:25:42
la solucion amigo es crear tu form con seccion privada de datos , esto quiere decir que cada form trabaja con su propio entorno de datos y pon el formulario de ventas en nomodal.
prueba y veras que no hay ningun problema.

saludos
alberto
santa fe, argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta Forms

Publicado por Pablo (Argentina) (433 intervenciones) el 12/11/2009 22:05:24
Hola A todos Amigos del Foro, bueno voy a probar todas las opciones que me han pasado a ver cual me funciona mejor y les cuento.

Muchas Gracias a Todos.

Pablo - Argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta Forms (mauricio)

Publicado por Pablo (Argentina) (433 intervenciones) el 13/11/2009 14:00:26
Hola Mauricio, me gusto tu idea, pero no entiendo bien como es el tema de una copia de proveedores, si lo que yo tengo que hacer en caso de que no exista el proveedor, es abrir el form y carga un nuevo registro con ese proveedor, entonces estoy usando las tablas de nuevo y ahi es donde tengo el problema, me decis que copie y con pocas cosas me arreglo pero no entiendo bien tu concepto que parece estar muy bueno. ¿me podrias explicar un poco mas o con un minimo ejemplo?

Muchas Gracias

Pablo - Argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar