Cómo capturar valor desde una clase...

Tengo un formulario de actualización de una tabla. Para elegir el registro a actualizar utilizo una ayuda que filtra los registros para que pueda seleccionar el registro adecuado. Esta ayuda está en una clase contenedor formulario, la cual tiene un objeto combobox para seleccionar el cambpo, textbox para filtrar la información del campo y un grid para colocar los resultados del filtro. Del grid con el evento doble click selecciono el dato que luego en el fumulario de actualización me permitirá reposicionar el puntero en la tabla y así editar dicho registro.
En la forma tradicional lo podría hacer ejecutando la orden: DO FORM ayuda TO NombreVariable, en donde nombre variable contendría el valor que utilizaría para reposicionar el puntero en la tabla.
Pero como quiero usar una instancia de la clase de ayuda, despliego dicha instancia u objeto oAyuda. Show() pero no logro retener o capturar el valor seleccionado para luego usarlo en mi formulario de actualización de la tabla.
¿Cómo obtengo ese valor?
Muchas gracias por su ayuda.
{"Lat":14.8384456166753,"Lng":-91.5232372283936}

1 respuesta

Respuesta
1
La verdad que no entiendo tanta objetividad, en resumen que es lo que deseas obtener, para poder guiarte bien, tal vez te estés complicando las cosas demasiado cunado la respuesta es más sencilla de lo que parece. Dime lo que deseas obtener y veremeos la forma de como solucionarlo.
Haber:
Cuando he necesitado recoger el valor de un formulario he escrito esta sintaxis: DO FORM NombreForm TO NombreVariable. Después uso NombreVariable y listo. Ahora, ese formulario lo guardé como una clase y necesito siempre recoger un valor de esa clase. Mi clase se hace visible con oForm. Show(), pero cómo capturo el valor que me interesa cuando cierro la clase. NombreVariable= oForm. Show() o cómo.
Gracias.
Disculpa que insista macamore, pero cual es el objetivo que quieres alcanzar con eso. Pero siguiendo la lógica, si guardo el formulario en una clase y el valor de la variable depende de que el formulario este abierto, como voy a obtener dicho dato si esta cerrado, es ilógico verdad. Por eso insisto en decirte que es lo que intentas obtener para ver otra forma de capturar datos. Si es eso lo que deseas. No esta muy clara tu explicación de tus objetivos.
Déjame darme a entender.
1. Tengo un formulario de actualización de una tabla.
2. En ese formulario quiero poner una ayuda para el usuario, de manera que cuando pulse un botón comando, despliegue en el grid de otro formulario una consulta basada en la tabla que estoy actualizando.
3. Ese otro formulario, además de la grid quiero que tenga un cuadro de texto donde el usuario en la medida que vaya escribiendo, la grid presente los registros que coincidan con el filtro que se va ingresando.
4. En la grid, entonces el usuario pulsará doble click en el registro que quiere editar.
5. Al hacer doble click, quiero guardar el valor de la llave única desde la consulta y luego se debe cerrar la ayuda.
6. Con el valor seleccionado, quiero posicionarme en el registro correspondiente de la tabla que estoy actualizando, luego pulsar el botón editar en el formulario de actualización y hacer los cambios.
Anteriormente lo lograba poniendo en el botón comando de ayuda, entre otras instrucciones: DO FORM NombreForm TO NombreVar, entonces el valor seleccionado me quedaba en esa variable y luego la utilizaba en el botón comando para reposicionar el puntero de mi tabla.
Pero ahora, que convertí ese formulario a clase, cómo capturo ese valor, antes que el formulario se destruya. A menos que reposisione el puntero de mi tabla antes que se cierre el formulario de ayuda. Creo que por ahí va la solución de mi problema.
De todas maneras escucho alguna sugerencia.
Gracias.
Bien vayamos por partes
1.- En el primer formulario debes de crear una variable publica en el cual vas a grabar el id del registro que quieres utilizar como filtro para que en la grilla del otro formulario te muestre la tabla filtrada. En el evento init del segundo formulario ejecutas el comando para filtrar la tabla cuya clave es la variable publica que creaste, de esa manera la grilla te mostrara solo los registros que contengan dicho valor de la variable.
2.- En el evento interactivechange le das una búsqueda a través del campo que tenga relación con el textbox. Y actualizas el formulario de esa manera cada letra que escribas la grilla te muestra el registro que consida con lo que escribas en el formulario.
3.- No te olvides de poner en el evento destroy del segundo formulario la instrucción para desactivar el filtro, de lo contrario no podrás ver el resto de información que contenga la tabla.
4.- Editas el obtejo text1. De la columna de la grilla donde ejecutas el eventyo doble click, dándole la orden que almacene la información que desees en la variable y luego le das la orden que cierre el formulario.
No se porque complicarte con otro formulario cunado puedes hacerlo, mediante un commandboton dentro del mismo formulario.
Pero ahí te va la posible solución.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas