Formulario para eliminación de registros

Hola carlos! Paso ahora al siguiente formulario: formulario para eliminación de registros! Espero con alegría tus orientaciones! Gracias! XD

1 respuesta

Respuesta
1
Espero que todo haya funcionado bien hasta aquí !
1) Editar la Clase Miform
2) Crear un nuevo método llamado DELETERECORD, de visibilidad pública.
3) Una vez que hayas creado el método pega el siguiente código:
*---------------------------------------------------------------*
*  marca un registro para su eliminacion
*
*  devuelve valores numericos:
*    0 -- no se realizaron cambios
*    1 -- se marcó el registro exitosamente
*---------------------------------------------------------------*
thisform.mousepointer=11
* define variables locales *
local borrado
borrado=0
lc_alias=alltrim(alias())
if not empty(alias())
    thisform.buffergetset
    delete next 1
    =tableupdate(.t., .t.)
    thisform.bufferreset
    borrado=1
endif
* libera variables locales
release lc_alias
thisform.mousepointer=0
return borrado
4) Crear un nuevo método llamado BUFFERGETSET, de visibilidad pública y pega el siguiente código:
*******************************************************************************************
* evalua el valor de la propiedad buffering de la tabla activa y si es distinto de 5      *
* cambia el valor a 5 para permitir el que  se pueda llamar al metodo recedit de esta     *
* clase. debe restaurarse el valor original de la ropiedad llamando al metodo bufferreset *
* antes del comando dodefault() en el evento destroy del formulario                       *
*******************************************************************************************
* controlar buffermodeoverride *
public pn_buffmode
pn_buffmode=cursorgetprop("buffering",alias())
if pn_buffmode<>5
    =cursorsetprop("buffering", 5, alias())
endif
5) Crear un nuevo método llamado BUFFERRESET, de visibilidad pública y pega el siguiente código:
*******************************************************************************************
* evalua el valor original de la propiedad buffering de la tabla activa y si es distinto  *
* de 5 lo restaura al valor original obtenido en el metodo buffergetset de esta clase     *
* este método debe llamarse antes de la sentencia dodefault() en el evento destroy        *
*******************************************************************************************
* restaura buffermodeoverride *
if pn_buffmode<>5
    =cursorsetprop("buffering", pn_buffmode, alias())
endif
release pn_buffmode
6) Partiendo de tu formulario de edición de datos crea un form con los controles deshabilitados (enabled=.f.) Para que no se puedan editar los datos.
7) Cambia el nombre de la propiedad Caption de tu bitón aceptar. Ponle Eliminar.
8) En el evento clic del botón escribe el siguiente código:
thisform.mousepointer=11
select mitabla
thisform.deleterecord
dodefault()
thisform.mousepointer=0
9) Edita tu form. Maestro ABM y luego edita el botón eliminar de tu commandgroup. Escribe el siguiente código:
thisform.mousepointer=11
select mitabla
p_form_name="miformeliminar.scx"
dodefault()
thisform.mousepointer=0
Pruébalo y me avisas cualquier duda.
Hola Carlos! He realizado todas tus orientaciones al pie de la letra y pues todo ha salido con mucho éxito hasta este punto! ¿Pertmiteme preguntar que es lo que sigue ahora? Saludos! :D :D :D
Seguimos el orden de los botones de tu commandgroup
Vamos con "Creación de Formulario de Búsqueda"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas