Es un gusto saludarte y gracias por consultar.
Según lo que comprendo de tu consulta, ¿deseas algo así como ingresar algún password de usuario administrador que te de el permiso de eliminar? De no ser así, aclárame para poder ayudarte mejor.
De ser así, puedes proceder de la siguiente manera:
La idea, de forma secuencial, es crear un form (secundario) que te permita validar el usuario o password o ambos, del administrador. El form se genera en modo de lectura cuando haces clic en el botón "Eliminar" de tu form principal. Lo que básicamente realizaras es: cuando el form secundario se abre, digitas el usuario o password (según a como lo querrás diseñar) y lo validas, si es correcto, entonces el form se cierra y traspasa un parámetro al form principal indicando que la validación del usuario administrador si es correcta, osea que si corresponde al administrador. Si no pasa el parámetro, entonces no es valido. La opción se resume a abrir el form secundario, validar la clave y retornar un parámetro (puede ser el valor 1) que de ser correcto, te permita dar el paso siguiente: eliminar.
1. Crea el form de validación (que es donde meterás la clave) para eliminar el registro. Lo llamaremos form1 (a modo de ejemplo). Establece, en modo de diseño del form, las propiedades siguientes: WindowType = 1 - Modal, ShowWindow = 1 - Top Level.
2. En ese form1, en modo de diseño, ve al menu "form" y haz clic, luego clic en la opción "New Method" y crea un método llamado "validar".
3. Siempre en el form1, en modo diseño, ve de nuevo al menú "form" y haz clic ahora en la opcion "new property" y crea 2 propiedades: "lretval" y después crea otra propiedad llamada "oretorno". Coloca como valor por defecto para ambas propiedades ".F.".
4. En el evento INIT() del form1, coloca este código:
**--
THISFORM.oretorno = CREATEOBJECT("Empty")
**--
ADDPROPERTY(THISFORM.oretorno, "validacion", " ")
5. En el método "validar" que has creado (lo veras en la pestaña"method" de las propiedades del form, en la parte inferior al final), haz doble clic. Y en dicho método, escribí tu rutina con la que pretendes validar la clave o usuario administrador. Esto depende de como lo realices en tu aplicación. Este método claramente validara tu clave y si la clave es correcta, entonces debes cargar el parámetro de retorno (al form principal) y cerrar. Se me ocurre algo así: supongamos que en el form ponemos 2 textbox y en ellos digitamos nombre de usuario y password:
**--Validamos la clave del usuario maestro y si es correcta, cargamos el parámetro de retorno:
lcUsuario = ALLTRIM(THISFORM.Text1.Value)
lcPass = ALLTRIM(THISFORM.Text2.Value)
SELECT nombreusuario, password FROM tablausuarios WHERE nombreusuario = lcUsuario AND password = lcPass INTO CURSOR cursorvalidar
**--Se cargo el cursor?
IF USED('cursorvalidar')
SELECT cursorvalidar
**--Hay datos validos?
IF EMPTY(ALLTRIM(cursorvalidar.nombreusuario)) OR ISNULL(cursorvalidar.nombreusuario)
MESSAGEBOX("El usuario no existe. Verifique", 48, "Aplicación")
**--Enviamos cero al parámetro de retorno
THISFORM.oretorno.validacion = 0
**--Si hay datos validos, el usuario y pass son validos.
ELSE
**--El parámetro de retorno es valido porque la clave es correcta. Su valor es 1.
THISFORM.oretorno.validacion = 1
**Cerramos el form.
THISFORM.Release()
ENDIF
**--No se cargo el cursor
ELSE
MESSAGEBOX("El usuario no existe. Verifique", 48, "Aplicación")
**--Enviamos cero al parametro de retorno
THISFORM.oretorno.validacion = 0
ENDIF
**--//
Acá te doy solo un ejemplo... lo importante es que cuando vos valides tu clave de admin, cargues el parámetro de retorno (THISFORM. Oretorno.validacion = 1) con valor 1. Y cerres el form. Con esto le decís: "ok la clave es valida, regresa valor 1 al form principal para indicar que la validación fue correcta y que si se puede eliminar el registro. Para llamar a este metodo validar, coloca un boton y en el evento clic pones "THISFORM.validar()".
6. En el evento "Unload" del form1, coloca este código:
RETURN THISFORM.oretorno
7. Guarda los cambios en tu form1.
8. Ve ahora al form principal (desde donde eliminaras el registro). En el botón que mencionas "eliminar", coloca este código:
Local lcRespuesta
**--
lcRespuesta = MESSAGEBOX("Desea eliminar el registro?", 36, "Aplicación")
DO CASE
CASE lcRespuesta = 6 &&La respuesta es "Si"
**--Llamamos el form de validación de usuario admin
DO FORM "form2.scx" TO lMyRetVal
IF NOT EMPTY(lMyRetVal.validacion) AND lMyRetVal.validacion = 1
**--Acá el proceso para eliminar el registro.
ENDIF
**--//
CASE lcRespuesta = 7 &&La respuesta es "No"
*--()
ENDCASE
**--//
Y listoooo! Es todo. Se ve algo complicado en letras... jaja pero en la practica, si seguís los pasos, te funcionara exitosamente.
Bien... si esto contesta a tu inquietud, muy bien. Si tenes alguna duda, avísame por acá! Estoy a tus ordenes para lo que necesites. Con muchísimo gusto te contestare y apoyare.
Fue un placer y cuídate mucho.
Te mando un abrazo!
Desde Managua, capital de Nicaragua!
Ravenn :D :D :D