Permissão em uma PROCEDURE
Bom dia colegas!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se não for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA')
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se não for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA') or (PROCEDURE X ACTIVE)
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
Matheus Rs
Curtidas 0
Respostas
Matheus Rs
24/04/2013
Bom dia colegas!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA')
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA') or (PROCEDURE X ACTIVE)
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
GOSTEI 0
Matheus Rs
24/04/2013
Bom dia colegas!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
Vou explicar minha situação.
Coloquei uma "Exception" em uma Trigger ( before update )no meu Banco de dados, esta:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA')
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Sempre que a minha antiga informação na coluna ABAESCONDER ( tabela A02AABA ) for igual a "S" e meu usuario não for "PISTA", a informação podera ser alterada para "N", se for usuario "PISTA", a minha "Excepition" entra em "ação".
Meu problema vem agora pessoal. Tenho uma procedure que sempre que vou fechar o caixa, ela confere a Tabela A02AABA para verificar inconsistências, e acaba passando pelas triggers, quando vai passar pela minha trigger que postei logo acima, ela entra em ação a "exception", pois estou logado com o Usuario "PISTA" para fechar o caixa.
Alguém sabe de alguma coisa paliativa para esta situação? Pensei em algo na trigger tipo, "quando for a procedure X que estiver sendo ativada, desconsideraria a "Excepition"" algo bem a "grosso modo" mesmo ( to muito por fora deste tipo de comando se existe, tem como etc.. Galera! ) Sei la tipo assim:
IF (OLD.abaesconder = 'S')
THEN
Begin
if (USER <> 'PISTA') or (PROCEDURE X ACTIVE)
then
new.abaesconder = 'N';
else
begin
exception perfil_sem_permissao;
End
END
Valeu Galera qualquer coisa estou aqui para melhores explicações. Um abraço!
GOSTEI 0