Para esto, procederemos de la suiguiente manera:
1. En el evento INIT del form escribimos SET DELETED ON. Esto es para que los registros que "eliminamos", no aparezcan. No obstante, tambien puedemos establecer SET DELETED OFF si queremos poder seguir viendolos una vez que ya los "eliminamos". Eso es en dependencia de la aplicacion y como queremos administrar dichos eliminados.
2. Creamos un boton (Eliminar) en tu form y en el evento CLICK escribimos esto:
**--Eliminar registros DELETE--**
#DEFINE MSGBOX_YES 6
#DEFINE C_MSGBOX1 36
#DEFINE C_DELETE_LOC "Desea eliminar este registro?"
IF EMPTY(ALIAS())
RETURN
ENDIF
IF MESSAGEBOX(C_DELETE_LOC,C_MSGBOX1) = MSGBOX_YES
DELETE
THISFORM.Refresh
ENDIF
IF !EOF()
SKIP 1
ENDIF
IF EOF() AND !BOF()
SKIP -1
ENDIF
THISFORM.Refresh
**--Fin--**
No es aconsejable eliminar registros "totalmente" de las tablas con PACK en lugar de DELETE... puesto que podrian darse situaciones en que necesitaremos "llamar" o "recuperar"nuevamente esos registros con RECALL!!!
Saludos. Sugerencias y comentarios son siempre bienvenidos para mejorar.
Un abrazo! Desde Managua, Nicaragua.
Ravenn! :)