FoxPro/Visual FoxPro - Necesito Ayuda!!

 
Vista:

Necesito Ayuda!!

Publicado por Carlos Linares (10 intervenciones) el 02/02/2011 20:57:16
Buenas Tardes Amig@s Programadores,

Estoy haciendo un sistema que me mandaron en la uni.. Pero no consigo respuesta a algunas cosas que necesito..! He preguntado.. Y una persona me dio respuesta.. Pero fue muy tecnico..! Y yo de fox pro se muuuuy poco! Practicamente nada...!

Necesito saber como puedo ir hacia otro formulario usando un boton llamado Modificar aqui pongo el codigo que obtuve de un sistema

cMessageTitle = 'Advertencia'
cMessageText = '¿Desea Modificar Los Datos?'
nDialogType = 4 + 32 + 256
nAnswer = MESSAGEBOX(cMessageText, nDialogType, cMessageTitle)
thisform.hide
thisformset.frmmodificar.show
thisform.refresh

Pero cuando presiono el boton modificar me da un error que es el siguiente "Object is not contained in a FORMSET"

Le quite el SET del codigo THISFORMSET y me da error tambien. Son varias cosas que me mandaron a hacer..! Espero me puedan ayudar.. Y si no es de mucha molesta podrian darme un correo para mantener comunicacion.

Muchas 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:Necesito Ayuda!!

Publicado por José Luis Guillén Morales (1 intervención) el 03/02/2011 14:18:52
Buenas compañero, sin necesidad de que me envíes tu correo para explicarte algo que es tan fácil; te explico con tu mismo código:

cMessageTitle = 'Advertencia'
cMessageText = '¿Desea Modificar Los Datos?'
nDialogType = 4 + 32 + 256
nAnswer = MESSAGEBOX(cMessageText, nDialogType, cMessageTitle)

Coloca esto para que veas el valor que te da como resultado al dar click en algunos de los 2 botones, o si son más de 2 los botones:
? nAnswer

Cuando te aparezca la ventana del messagebox (¿Desea Modificar Los Datos? ) y le des click al botón "SI" veras el valor 6 y si le das "NO" te dará el valor 7.

Por lo tanto tu código quedaría así:

cMessageTitle = 'Advertencia'
cMessageText = '¿Desea Modificar Los Datos?'
nDialogType = 4 + 32 + 256
nAnswer = MESSAGEBOX(cMessageText, nDialogType, cMessageTitle)
IF nAnswer = 6
thisform.hide
thisformset.frmmodificar.show
thisform.refresh
ELSE
* Otra cuestión que quieras hacer, o simplemente no coloques el ELSE.
ENDIF

Eso es todo lo quieres, y sin necesidad de estar dando correo. Porque la mejor forma de ayudar a alguien es respondiendo aquí mismo en este medio, así muchos con las mismas dudas se benefician en cual momento.

Cualquier duda me avisas que gustosamente te ayudare o responderé.

Saludos
José Luis Guillén Morales
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:Necesito Ayuda!!

Publicado por Juan Fernando (537 intervenciones) el 03/02/2011 15:10:27
otra forma sencilla es así

Set Path To c:\Nombre del Proyecto\Form si tienes una carpeta Form
en el botón donde llamas al formulario de Modificar en el evento clic

Do form Nombre_form

abajo al final del código
Thisform.Command1.Refresh ( verifica el nº del Command)
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:Necesito Ayuda!!

Publicado por Carlos Linares (10 intervenciones) el 03/02/2011 18:28:30
Amigo Jose Luis gracias por la ayuda me sigue presentando el error. me dice

OBJECT IS NOR CONTAINED IN A FORMSET

Que puedo hacer en ese caso!?

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:Necesito Ayuda!!

Publicado por es_binario (757 intervenciones) el 03/02/2011 21:25:25
Mira te explico como funciona un message box que creo que es tu problema pero antes te comento lo siguiente.

Thisform es cuando solo utilizas un formulario
y Thisformset es cuando utilizas un conjunto de formularios, tu los vas a usar segun si los uses o no.

Primero digmos que tienes un boton que dice modificar datos entonces el codigo debiera ser asi

seguroModificar = Messgebox('¿Desea Modificar Los Datos?' ,4+32+256,'Advertencia' )
*// con 4 ponemos el boton si, con 32 el no y con 256 el canselar y evaluamos el resultado con un simpl if then

if seguroModificar = 6 && esto es un si
*// aqui hace lo que debe hacer el programa cuando el usuario a decidido si hacer
*// una modificacion digamos que es un form modal y son sus datos

Thisform.TxtNombre.Enabled = .T.
Thisform.TxtCalle.Enabled = .T.

*// lo anterior es un ejemplo

else
*// como nada mas el usuario puede elegir entre si y no, por lo tanto esto seria el no.
*// como dijo que no entonces no se hace nada o un simple return limpio basta
return
endif

si tienes mas de un formulario o uno donde se modifique entonces los mandas llamar con un show hide.

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:Necesito Ayuda!!

Publicado por Carlos Linares (10 intervenciones) el 04/02/2011 04:39:25
Gracias amigo estuvo buena tu explicacion,

Pero yo lo que necesito es que me abra otro formulario.. :/

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