Duvida em DBNavigator!

Delphi

05/03/2004

Caros amigos, como inutilizo o Insert de um DBNavigator para alguns usuários e outros nao?!

Atenciosamente

Luiz Claudio V. Santos


Luiz.claudio.vieira

Luiz.claudio.vieira

Curtidas 0

Respostas

Andremuller

Andremuller

05/03/2004

if UsuarioSemInsert then
DBNavigator1.VisibleButtons := DBNavigator1.VisibleButtons - [nbInsert]
else
DBNavigator1.VisibleButtons := DBNavigator1.VisibleButtons + [nbInsert]

É isso que tu quer fazer?


GOSTEI 0
Andrey

Andrey

05/03/2004

No evento BeforeAction do DBNavigator vc pode colocar:

if Button = nbInsert then
if then
Abort;


GOSTEI 0
Andrey

Andrey

05/03/2004

o código acima era pra ser:

if Button = nbInsert then 
    if <usuario não pode inserir> then 
        Abort;



GOSTEI 0
Luiz.claudio.vieira

Luiz.claudio.vieira

05/03/2004

E isto mesmo, mas o que acontece, quando eu coloco registro pra frente ou pra tras ele reabilita o Insert, como faço para bloquear no DataSet ou na tabela, ao inves do botao?!


GOSTEI 0
Andremuller

Andremuller

05/03/2004

É isso mesmo qual das duas respostas?
Não entendi direito a tua pergunta.


GOSTEI 0
Luiz.claudio.vieira

Luiz.claudio.vieira

05/03/2004

A sua resposta mesmo Andre, o se eu movimentar o a tabela o botao volta a ficar habilitado. Como desabilito a funcao insert da IbQuery?! Ou do DataSet?


GOSTEI 0
Andremuller

Andremuller

05/03/2004

Onde tu colocou o código que te passei?
O fato de navegar nos registros não faz o botão voltar. Tem alguma coisa errada aí.

Um forma bem simples de cancelar a inserção para alguns usuários é no evento AfterInsert do ClientDataSet. Põe lá um:

if UsuarioNaoPodeInserir then
ClientDataSet.Cancel;


GOSTEI 0
POSTAR