Para hacer una pantalla generada por el mismo ADempiere en donde el usuario solamente podrá grabar información pero nunca podrá eliminar. Entonces, primero entramos al PgAdmin y creamos un trigger el cual tendrá la restricción de que si el usuario intenta eliminar el registro seleccionado entonces le mandará un mensaje de error, en una forma rápida y sencilla, ver las siguientes imágenes:
Aqui tenemos el siguiente trigger que hace posible la restricción, esto a manera de ejemplo:
create trigger proteger_permiso_flujo before delete
on nic_permiso_flujo for each row execute procedure sp_proteger_registro();
create or replace function sp_proteger_registro()
returns trigger
as $$
declare
error int = 1;
begin
error = 1 / 0;
return NEW;
end;
$$ language plpgsql;
Esta única función "sp_proteger_registro()" se podría usar para muchas tablas.
create trigger proteger_tabla1 before delete
on tabla1 for each row execute procedure sp_proteger_registro();
create trigger proteger_tabla2 before delete
on tabla2 for each row execute procedure sp_proteger_registro();
...
create trigger proteger_tablaN before delete
on tablaN for each row execute procedure sp_proteger_registro();
>> Dejar un comentario es una forma de agradecimiento. <<
No hay comentarios:
Publicar un comentario