Borrar registro desde un grid

Disculpe la molestia.. Mi nombre es daniel.. Y necesito de su apoyo para borrar un registro...
Mire.. Tengo una tabla.. Y estoy usando un grid para ver el contenido.. Ahora quisiera poner un botón para que cuando se seleccione una fila de ese grid, esa fila unicamente se borrara.. Y no he logrado hacerlo.. Estoy usando el comando DELETE pero no se que argumento se le tiene que poner para que encuentre la fila seleccionada y solo borre esa fila...
Ojala me pueda ayudar en esto..

1 respuesta

Respuesta
1
Primero que todo coloca las propiedades DataSession y BufferMode del formulario a valor 2, en el evento Init del formulario escribe las siguientes líneas de código:
Set Multilocks On
Set Deleted On
Agregas un botón para eliminar y en el evento click de ese botón escribes lo siguiente:
Select "NombreTabla" && Tabla que está enlazada al control grid.
Delete
If Eof()
   Skip - 1
Endif
=TableUpdate(.T., .T.)
Thisform. Grid1. Refresh()
Ya agarra la fila que yo tenia seleccionada y la borra del grid.. y al refrescarse el grid ya no muestra la fila que yo quería... pero lamentablemente al salir de la FORM y al volver a entrar.. tengo un ...
select * FORM empleados INTO CURSOR curs1 READWRITE en el evento LOAD de la FORM..
Por lo tanto al entrar de nuevo vuelvo a ver la fila que ya se había eliminado... ¿algo más que pudiera hacer para que no se muestre la fila eliminada al volver a cargar la tabla?
No, estás trabajando muy mal, eso no te va a funcionar en un cursor o tabla temporal, lo que tienes que hacer es agregar la tabla Empleados al entorno de datos y al control grid establecer la propiedad RecordSource del control Grid con el nombre de la tabla Empleados y la propiedad RecordSourceType a valor 1 (Alias) así sí te va a funcionar, trata con eso.
Ya funciono! Don alonso muchas gracias por su apoyo.. en efecto estaba haciendo las cosas mal.. hice las modificaciones que me sugirió y funciono a la perfección!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas