Aprendiendo a borrar registros con proceso previo

Cuando queremos borrar registros de nuestra base de datos Velneo v7, hay ocasiones en las que necesitamos lanzar previamente un proceso para realizar comprobaciones o para eliminar plurales por ejemplo. En este post vamos a ver como realizar esas comprobaciones.

Consideraciones previas a borrar registros con proceso

Vamos a partir de la base de que queremos eliminar un registro desde un formulario con origen ficha. El típico borrado seleccionando la ficha desde una rejilla y lanzando el formulario de baja asociado a dicha rejilla.

Aprendiendo a borrar registros con proceso previo

La segunda premisa es que lo lógico para lanzar un proceso previo al borrado de registros de una tabla es utilizar los triggers de tabla, que para eso están. Estos trigger se van a lanzar siempre que haya una operación de baja en la base de datos (desde un proceso, desde una ficha, etc.)

El ejemplo que vamos a ver en este post es para realizar esas comprobaciones en el proyecto de aplicación y desde una ficha, por lo tanto SOLO se lanzará en ese contexto.

Opción comando “Eliminar” o “Eliminar controlado”

Borrar registros

Borrar registros

Lo mas sencillo es poner en ese formulario un botón con el comando “Eliminar” o “Eliminar controlado”.

btn_sup

El problema que tiene esta opción es que no podemos lanzar un proceso previo en el proyecto de aplicación.

Opción “Ejecutar manejador de evento”

La segunda opción es disparar un manejador de evento del formulario desde el botón “Eliminar”.

Para ello necesitaremos crear dos manejadores de evento:

  • En el primer manejador de evento (por ejemplo PRE_SUP), ejecutaremos las instrucciones de comprobación que queramos realizar.
  • En el segundo manejador de evento (por ejemplo SUP) ejecutaremos las instrucciones necesarias para eliminar el registro.

Creando el manejador de evento “PRE_SUP”

Este es el código del manejador “PRE_SUP”.

man_pre_sup

  • 1.- Comprobamos si el usuario tiene permisos para eliminar el registro
  • 2.- Nos aseguramos de que realmente el usuario quiere eliminar el registro… (ya sabéis que hay veces que “misteriosamente” las aplicaciones eliminan registros por si mismas… el usuario nunca ha sido.)
  • 3.- Ejecutamos las instrucciones que nos interesen antes de eliminar el registro. En este caso (para el ejemplo) cargamos un plural y lo recorremos eliminando los registros. Ya se que esto se podría haber hecho desde el trigger previo a la baja (podría no… SE DEBERÍA) pero era para ilustrar el ejemplo.
  • 4.- Llamamos al manejador de evento que elimina el registro.

Creando el manejador de evento “SUP”

Aquí es donde viene lo complicado…

Igual que usamos la instrucción “Interfaz: Aceptar” para aceptar un formulario o la instrucción “Interfaz: Guardar la ficha en alta o modificación”, deberíamos utilizar la instrucción “Interfaz: Eliminar” para dar de baja la ficha.

Te ahorraré que busques la instrucción en el editor: No existe.

Por lo tanto.

¡¡¡Tenemos que crear un manejador de evento de tipo vJavaScript!!!

y este es el código que tenemos que introducir en él:

man_sup

Esto es todo lo que tenéis que poner en el manejador.

De esta forma, en el manejador “PRE_SUP” haremos todas las comprobaciones que necesitemos y en caso de que el usuario tenga permisos de borrado y realmente quiera eliminar la ficha, llamará al proceso “SUP” que eliminará el registro de la base de datos.

¿Has necesitado hacer comprobaciones antes de borrar registros de tu base datos y no sabías como hacerlo? Déjame tu opinión mas abajo en los comentarios.

Francisco José Vila Martín
ayudavelneo@ayudavelneo.com

Francisco José Vila es autor del blog Ayudavelneo desde donde ayuda a desarrolladores que se están iniciando en Velneo a acortar su curva de aprendizaje para que obtengan beneficios y sean rentables desde el minuto 1. Además es programador certificado y formador en la plataforma de desarrollo de aplicaciones empresariales Velneo V7. Ampliar información

1Comment

Post A Comment

Información básica sobre Protección de Datos: Responsable: Francisco José Vila Martín. Finalidad: Gestionar y moderar los comentarios. Legitimación: Tu consentimiento. Destinatarios: Tus datos se alojarán en los servidores de Web Empresa S.L. (UE). Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos, así como otros derechos, como se explica en la información adicional. Información adicional: Puedes consultar la información adicional y detallada sobre protección de datos personales en mi Política de Privacidad.

Pin It on Pinterest