• Domingo 17 de Noviembre de 2024, 22:37

Autor Tema:  Retomar datos del form2 al form1  (Leído 2338 veces)

LenguajeC

  • Miembro activo
  • **
  • Mensajes: 28
  • Nacionalidad: ar
    • Ver Perfil
Retomar datos del form2 al form1
« en: Jueves 6 de Enero de 2011, 00:49 »
0
Hola a todos.

El programa es para controlar los vencimientos de mercaderías.-
Tengo hecho la búsqueda y la cuadricula en sendos contenedores en el
form principal, esto funciona de maravillas y es medianamente fácil de
programar, pero a nivel diseño es un poco molesto y además me pregunto
que pasaría si tengo que hacer un programa de gestión comercial completo,
de ninguna manera podría poner todo en un solo form.-
Entonces me surge la necesidad de hacer todo x separado y encontré el
primer escollo, en el form con la cuadricula estoy mostrando los datos
usando un cursor, antes de cerrar el form(cuadricula) hago un seek para mover
el puntero de la tabla vencimientos(la original) al lugar donde se encuentra
el registro seleccionado, si hago un browse todo ok. Pero al cerrar el form
con la cuadricula y regresar al principal el puntero esta en el mismo lugar
que al principio.-
Me podrían decir como lo hacen Uds.

Desde ya muchas gracias x el tiempo que le dediquen.-

Saludos.
Daniel
abraza las cosas y personas malas como si fueran tu mas preciada joya,
Son tus mas grandes maestros de paciencia sabiduría y amor
y cuando lo abrazas dejan de causar dolor.-

arielb

  • Moderador
  • ******
  • Mensajes: 771
  • Nacionalidad: pa
    • Ver Perfil
    • http://coder-pa.blogspot.com
Re: Retomar datos del form2 al form1
« Respuesta #1 en: Viernes 7 de Enero de 2011, 17:34 »
0
Código: Text
  1. thisform.nombregrid.refresh()
  2.  
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16

http://coder-pa.blogspot.com

LenguajeC

  • Miembro activo
  • **
  • Mensajes: 28
  • Nacionalidad: ar
    • Ver Perfil
Re: Retomar datos del form2 al form1
« Respuesta #2 en: Domingo 9 de Enero de 2011, 14:42 »
0
Hola Juez
Bueno no logro interpretar lo que me dices x aquello de la sección privada de datos, creo que cuando form1 llama a form2 vfp crea una tabla similar
a la del form1 que al cerrar form2 todo lo que hayas hecho en la tabla contenida en el form2 no tiene ingerencia sobre la tabla original(form1).-
Bueno, si lo que digo es realmente así lo voy a hacer de esta manera:
desde el form2 -> form1.tag = "1289", 1289 es código seleccionado y con esto tengo en form1 el dato necesario.-
Si no tienes una manera mejor lo voy hacer siempre de esta manera.-

Saludos.
Daniel
abraza las cosas y personas malas como si fueran tu mas preciada joya,
Son tus mas grandes maestros de paciencia sabiduría y amor
y cuando lo abrazas dejan de causar dolor.-

keypunch

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Retomar datos del form2 al form1
« Respuesta #3 en: Lunes 17 de Enero de 2011, 18:34 »
0
No está claro el tema en cuestión , pero suponiendo que trabajas con sesión privada de datos , en cada sesión – cada formulario- deberías buscar el datos en si , ya sea con un Select * from [tabla] o un seek como estás haciendo en estos momentos.

Do form xxxx to nValorIndice

En la grilla coloca , en el método AfterRowcolChange algo como Thisform.nNumeroIndice = [Nombretabla].Identificador

En el Unload del formulario se retorna  al valor que anteriormente asignaste a una propiedad del formulario con

Retrun thisform.nNumeroIndice
 
También puedes trabajar cobre un commandbutton que es el de salir del formulario , ahí colocas el código del método AfterRowColChange y nada enla grilla , por ejemplo :

Select [NombreTabla]
Thisform.nNumeroIndice = [Nombretabla].Identificador
Thisform.Release()

El Unload se encarga de pasar o retronar en la llamada al formulario el valor que necesitas .

Obviamente los buscadores trabajan sobre el área actual de trabajo , mientras el formulario FRM1 trabaja con sesión privada de datos , el buscador es el que trabaja con la sesión actual . por eso si haces un seek de la tabal en el formulario - FRM2-  buscador , al volver deberías estar parado en el registro que buscaste.

Bueno eso es todo