FoxPro/Visual FoxPro - ING

 
Vista:

ING

Publicado por aprendiz (7 intervenciones) el 12/04/2007 17:47:38
HOLA A TODOS!!

tengo un problemita:
tengo tres formularios, en form1 tengo dos botones para abrir los dos restantes (form2 y form3) al abrir form3 me abre correctamennte pero sobre este enseguida sale un mensaje que dice:

"No se encuentra la variable 'd'
ERROR: 12
No se encuentra la variable 'd'
Method: form1.d1.Controlsource
Line: 0

ACEPTAR"

Le doy click en ACEPTAR e inmdiatamente sale otro cuadro igual para la variable 'e' y 'f', doy ACEPTAR a estos otros cuadros y listo sigue funcionando correctamente. puedo salir del formulario e ingresar nvamte y ya no salen los recuadros, abro el Form2 y no hay inconveniente.
Pero si abro inicialmente el Form2 me sale un recuadro similar para a,b,c,d,e y f les doy aceptar y sigue correctamente, y si abro seguido a esto el form3 no me salen los recuadros anteriormente mencionados.

"No se encuentra el alias 'temporal'
ERROR: 13
No se encuentra el alias 'temporal'
Method: form1.a1.Controlsource
Line: 0

ACEPTAR"

nota: * temporal esta en form1en un procedimineto de:
SELECT xxxxx FROM xxxxx WHERE xxxxx INTO CURSOR temporal
* a1,b1,c1.... son cuadros de texto.
* a,b,c..... son nombres de columnas de la tabla usada en el SELECT

* La consulta la ejecuta correctamente y los mensajes solo salen cuando intento
abrir Form2 o Form3.

Le agradezco a alguien que me puda ayudar a omitir estos odiosos cuadros.

Mil GRACIAS!!!
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:ING

Publicado por GLAD (34 intervenciones) el 12/04/2007 18:16:12
Se me ocurren dos cosas:

Primera:

- Que a los form2 y form3 les estés pasando una variable que no tienes inicializada en dichos forms. Si es esto, usa LPARAMETERS nombrevariable en el evento init de dichos forms.

Segunda:

- Que los form2 y form2 estén trabajando con cursores que provienen de un select. Prueba en el dataenviroment o entorno de datos, a añadir un cursor y ponerle el nombre que le hayas dado.

Espero te sirvan de ayuda estas ideas.

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:ING

Publicado por aprendiz (7 intervenciones) el 12/04/2007 22:08:14
Primero que todo Gracias, ya solucione uno de los inconvenientes con el entorno de datos ya en el Form2 dejaro de aparecer el error 13 no encontraba el alias temporal. Pero en el otro Form3 aun sigue el error 12 no encuentra variable y ya le puse en el evento init (LPARAMETER c,d,e) se usa asi?
te agradezco.
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:ING

Publicado por GLAD (34 intervenciones) el 13/04/2007 12:48:40
Me alegro hayas podido solucionar una parte del problema.

Tal vez sea más sencillo el tema de la variable de lo que te planteaba. Lo que te planteaba era porque entendía que estabas ejecutando tu form3 con una variable que le venía de otro form así: DO FORM3 WITH c,d,e

Para ese caso se ponía LPARAMETERS c,d,e

Pero igual se trata de una variable que usas en ese form3 y que no tienes definida, para lo que entiendo puedes inicializarla en el código dónde la utilices definiéndola primero como: c=0 , o bien, c="".

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:ING

Publicado por aprendiz (7 intervenciones) el 13/04/2007 15:33:33
Hola GLAD!!
Realmente no se que es lo que sucede, tampoco funciona declarando la variable
(pero como te comente en la pregunta las variables pertenecen al FORM1)no las uso no las toco para nada en el Form3. pero al abrir este sale el error con tres de las 6 variables que toco en Form1 con un SELECT.

Por otro lado, como ya no muestra error en Form2 del Alias entro por este Form2 y desde alli tambien puedo ingresar a Form3 lo hace correctamente sin mostrar ningun error. (dado el caso omito el ingreso a Form3 desde Form1, pero me gustaria saber que es lo que sucede)

Gracias.
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:ING

Publicado por GLAD (34 intervenciones) el 13/04/2007 17:01:00
Hola aprendiz.

Pues de aprendiz a aprendiz, pues no se me ocurre nada, salvo que intentes poner nombre a tus forms y si lo llamas por ejemplo aprendiz, uses, por ejemplo:

aprendiz.nombre.value en lugar del thisform, cuando utilizas un select, de forma que no se pierdan las cosas por el aire al ir ejecutando unos y otros.

No sé, es otra idea, a falta de más.

Haz la prueba.
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:ING

Publicado por Plinio (7841 intervenciones) el 12/04/2007 20:01:39
La solucion es talvez te la dió GLAD, solo queria decirte que trate de no usar variables que se te imposibilite leer los programas. VFP permite usar nombres largos, los cuales son mas practicos.
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
sin imagen de perfil

Nuevo RE:ING

Publicado por jafcorp (91 intervenciones) el 13/04/2007 19:40:50
Hola, también podrías declarar las variables com públicas y se verían en todos los formularios

PUBLIC mi_variable
mi_variable = valor

Saludos

Jafcorpo
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