FoxPro/Visual FoxPro - Eliminar registro.

 
Vista:

Eliminar registro.

Publicado por Nomequieroniyo (2 intervenciones) el 12/09/2002 06:18:35
Amigos del foro:
Necesito borrar un registro que se ha seleccionado en un control grid.
Para esto, tengo un commandbutton que tiene el codigo:

GO ThisForm.nRegistro
nRta=MessageBox("Confirme eliminación",...etc)
IF (nRta=6)
:::etc.

La primera línea emplea el número de registro almacenado en la nueva propiedad del form nRegistro. Esta propiedad se modifica en el evento Afterrowcolchange del grid ( ThisForm.nRegistro=RecNo()). Esto funciona correctamente. Si no utilizo esta propiedad y hago click en el commandbutton para borrar, estaría borrando el registro equivocado.
Es esto correcto? Porque? Espero que me entiendan
Ah! Me olvidaba: porque el comando PACK, borra el contenido de un grid ? Esto se soluciona solo con sacar el PACK o hay otra forma?
Un gran saludo.

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:Eliminar registro.

Publicado por eric (254 intervenciones) el 12/09/2002 16:48:20
Hola, cuando tu das click en el Grid, se supone que esta apuntando al registro de tu tabla, es decir, no necesitarias el GO, pero tampoco esta de mas, si lo quieres usar, esta bien, solo que apuntalo el recno() a una variable, no hacia thisform.nregistro, porque seria un innecesario, mejor a una variable y despues le dice GO Variable.
el comando PACk te borra los marcados para borrar, cuando ejecutes el pack, dale un refresh a tu grid y con eso debe bastar.
Suerte
E.
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:Eliminar registro.

Publicado por Nomequieroniyo (5 intervenciones) el 14/09/2002 03:07:53
Hola y gracias por tu respuesta, de la cual no entiendo esto:
Necesitaría el GO? esto es.... NO LO NECESITO?
Lo he probado sin utilizar GO, porque como tu dices, se supone que existiría un sincronismo entre el grid y la tabla, pero no funciona. En el messagebox puse que me muestre el valor de un campo del registro que quiero borrar, pero el dato que me sale corresponde a otro registro....el primero de la tabla.
Mas abajo en tu respueste, haces referencia a una Variable,ok...pero que la diferenciaría de una nueva propiedad del form? Porque dices que es "mejor una variable" .
Ahora....como "sabe" el GO que el valor de tu Variable contiene el numero de registro que estoy señalando en el grid?

Con respecto al refresh, lo hice pero el grid sigue en "blanco"
De nuevo 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