...
Foi criada uma procedure na package PKG_PONTOENTRADACOMPRACUST para realizar a chamada da procedure SP_PERMISSAOABASTECAUTOMCUST, onde permite realizar as customizações, garantindo que funcionalidades padrões do sistema não sejam afetadas em ambientes sem a customização.
Para customizar a mensagem de bloqueio, quando clicar no botão "Gera Pedidos", caso na procedure SP_PERMISSAOABASTECAUTOMCUST esteja customizada paratParmOut.Numerico1 retornar 0, será exibida a mensagem definida no tParmOut.Texto1.
Imagem 02 - Exemplo de bloqueio no botão a partir da procedure criada.
CREATE PROCEDURE SP_PERMISSAOABASTECAUTOMCUST(tParmIN IN PKG_PONTOENTRADACOMPRACUST.tParametrosIn,
tParmOut OUT PKG_PONTOENTRADACOMPRACUST.tParametrosOut)
IS
BEGIN
--tParmIN.Numerico1 : Número do Lote Abastecimento Automático
--tParmIN.Numerico2 : Número da Empresa logada
--tParmIN.Numerico3 : Número do cadastro do usuário
--tParmIN.Texto1 : Descrição da aplicação
--tParmIN.Texto2 : Nome do componente (Utilizado somente para o botão pbtGeraPedido "Gera Pedidos");
--tParmOut.Numerico1 : Utilizar para customização. 1- Tem permissão / 0- Não tem permissão (Caso informado 0, irá retornar mensagem em tela informado no tParmOut.Texto1)
--tParmOut.Texto1 : Utilizar este para customização da mensagem de retorno para usuário caso não tenha permissão(100 caracteres)
--NULL será retornada mensagem padrão: 'Usuário não tem permissão para utilizar o botão 'tParmIN.Texto2'!'
/*
--Exemplo1:
if tParmIN.Numerico3 = 2 then
tParmOut.Numerico1 := 0;
tParmOut.Texto1 := 'Usuário código ' || tParmIN.Numerico3 ||' não tem permissão, entrar em contato com JOÃO';
else
tParmOut.Numerico1 := 1;
end if;
*/
--Exemplo2:
if tParmIN.Numerico3 = 2 then
tParmOut.Numerico1 := 0;
tParmOut.Texto1 := null;
else
tParmOut.Numerico1 := 1;
end if;
/*
tParmOut.Numerico1 := 1; -- Padrão sem customização
tParmOut.Texto1 := null; -- Padrão sem customização*/
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR (-20200, SQLERRM );
END SP_PERMISSAOABASTECAUTOMCUST;
Se estiver na versão 22.07, atualizar o sistema para o service pack 23.01.0xx ou superior.
Se estiver na versão 22.01, atualizar o sistema para o service pack 23.07.0xx ou superior.
...