Pasar valores de una cuadricula dinámica a un textbox

Tengo un formulario con una cuadricula y un textbox, el formulario se trata de hacer una busqueda de registros con el mismo numero de control, por ejemplo, si quiero los registros con el numero de control 1 en la cuadricula me aparecen todos los registrso con numero uno, este es el codigo que estoi usando el cual funciona perfectamente
p=len(alltrim(thisform.txt.value))
thisform.CrearCuadricula
if p>0
   go top
   i=0
   do while .not. Eof()
      if upper(alltrim(thisform.txt.value))=str(control,p)
         thisform.Cuadricula.rows=thisform.cuadricula.rows+1      
         i=i+1
         thisform.cuadricula.textmatrix(i,0)=control
         thisform.cuadricula.textmatrix(i,1)=alltrim(cve_pptal)
         thisform.cuadricula.textmatrix(i,2)=alltrim(partida)
         thisform.cuadricula.textmatrix(i,3)=alltrim(fuente)
         thisform.cuadricula.textmatrix(i,4)=importe
      Endif
     skip
   enddo
Endif
p=len(alltrim(thisform.txt.value))thisform.CrearCuadriculaif p>0   go top   i=0   do while .not. Eof()      if upper(alltrim(thisform.txt.value))=str(control,p)         thisform.Cuadricula.rows=thisform.cuadricula.rows+1               i=i+1         thisform.cuadricula.textmatrix(i,0)=control         thisform.cuadricula.textmatrix(i,1)=alltrim(cve_pptal)         thisform.cuadricula.textmatrix(i,2)=alltrim(partida)         thisform.cuadricula.textmatrix(i,3)=alltrim(fuente)         thisform.cuadricula.textmatrix(i,4)=importe               endif     skip   enddoendif
lo que quiero es que al seleccionar el registro que quiero modificar en la cuadricula dandole doble click este me pase los valores a unos textbox que pondre abajo para asi poder modificar y despues actualizar esos datos, como puedo hacerlo

1 respuesta

Respuesta
1
Espero poder ayudarte! :D Entiendo lo que quieres! Yo hago lo mismo... con un doble click en una linea especifica de registro, muestro los valores en textos para modificar. Es fácil... muy fácil... no necesitas un gran código para esto... solo mucha creatividad! :D :D :D 
Va así... agrega los textos al form... y como estos serán de modificación directamente, enlazalos a los respectivos campos en la tabla. Así podrás mostrar el valor de un campo en el text y proceder a modificarlo. Cuando buscas el registro en el grid y lo encontrás y le das dobleclick, empujas "manualmente" el puntero a dicho registro. Entonces, para mostrarlo en los textos, unicamente debes poner un refresh, ya sea de los controles textos o bien del form, en tu evento doble click del grid o de una columna especifica... y así actualizaras los valores de los textos... "mostrándote el registro al cual le distes doble click... y ya podes proceder a modificarlo! Yo personalmente, prefiero hacer un refresh solo de los textos (THISFORM.Text1.Refresh)... es suficiente! Pero si tu quieres, podes redibujar todo el form y es lo mismo (thisform.refresh)!!! Acordate que el grid es solo una ventana de la tabla... los textos unicamente mostraran el registro en donde ubicas en puntero y una vez actualizado con refresh.. ya podes modificar!!!
Si quieres que al iniciar tu form, los textos te aparezcan vacíos y te muestren el registro a modificar hasta que hagas el dbclick... en el init de tu form, poneles value = " " (THISFORM. Tetx1. Value = " " ) Vess! Así lo hago yo y me queda perfecto! Si tienes algún problema... no dudes en avisarme! O si no es lo que buscas... decime para ayudarte y corregir!
A tus ordenes!
Ravenn! :D :D :D
? Hola de nuevo y muchas gracias por contestarme, lo que pasa que ya hice lo que me dijiste pero no me funciona, io pienso que no funciona por que la cuadricula es dinámica, o sea que los registros aparecen solo hasta que pones el numero de control que quieres buscar en el textos y oprimes el botón buscar, entonces es cuando me aparecen los registros, también agregue los otros textbox como me dijiste relacionándolos con la tabla, y si, cuando ejecuto el form, me aparece el campo de la tabla en el text correspondiente a ese campo, el problema es que cuando busco el registro en la cuadricula si me lo encuentra, por ejemplo busco los registros con el nume ro de control 2 y me aparecen todos los que tienen el numero de control 2, hasta allí esta todo bien, el problema es cuando doi doble click, en ves de aparecerme el registro en los text correspondientes a cada campo de la tabla lo que pasa es que los textos se desactivan y no pone nada ni deja poner nada, no si lo que tiene que ves es que la cuadricula, que no es normal, si no que es dinámica, o con controles ole creo io.
p=len(alltrim(thisform.txt.value))
thisform.CrearCuadricula
if p>0
   go top
   i=0
   do while .not. eof()
      if upper(alltrim(thisform.txt.value))=str(control,p)
         thisform.Cuadricula.rows=thisform.cuadricula.rows+1      
         i=i+1
         thisform.cuadricula.textmatrix(i,0)=control
         thisform.cuadricula.textmatrix(i,1)=alltrim(cve_pptal)
         thisform.cuadricula.textmatrix(i,2)=alltrim(partida)
         thisform.cuadricula.textmatrix(i,3)=alltrim(fuente)
         thisform.cuadricula.textmatrix(i,4)=importe
      Endif
     skip
   enddo
Endif
p=len(alltrim(thisform.txt.value))thisform.CrearCuadriculaif p>0   go top   i=0   do while .not. eof()      if upper(alltrim(thisform.txt.value))=str(control,p)         thisform.Cuadricula.rows=thisform.cuadricula.rows+1               i=i+1         thisform.cuadricula.textmatrix(i,0)=control         thisform.cuadricula.textmatrix(i,1)=alltrim(cve_pptal)         thisform.cuadricula.textmatrix(i,2)=alltrim(partida)         thisform.cuadricula.textmatrix(i,3)=alltrim(fuente)         thisform.cuadricula.textmatrix(i,4)=importe             
 endif    
skip  
enddo
endif
te mando de nuevo el codigo para que le heches una ojeada
? Espero haberme explicado bien, y ojala me puedas ayudar. Gracias
¿Los textos se desactivan? Ohhh! ¿Cómo vas eso? :O :O El echo que la grid sea de búsqueda dinámica no implica ese comportamiento! Si quieres, podes pasarme tu form y las tablas a esta dirección [email protected] para ver detalladamente cual seria la causa del problema. Por que agregando la situación que se desactivan, pues se torna complicado un poco darte una solución sin verrr o analizar bien los objetos! Dale!
A tus ordenes!
Ravenn!!! :D :D :D

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas