SAIDA CANCELANDO ALTERAÇÃO
Amigos,
Mais uma hoje....
O usuário entrou no cadastro para alteração, fez um alteração e mas, logo após resolveu sair sem gravar...
Como faço para notificá-lo que houve uma alteração no cadastro e deseja gravar ou realmente sair sem perdendo alteração?
Mais uma hoje....
O usuário entrou no cadastro para alteração, fez um alteração e mas, logo após resolveu sair sem gravar...
Como faço para notificá-lo que houve uma alteração no cadastro e deseja gravar ou realmente sair sem perdendo alteração?
Lenasi
Curtidas 0
Respostas
Osocram
25/08/2009
pode verificar se o .State <> dsBrowser do seu dataset principal
na verdade eu faço assim nos meus forms
public
PodeFechar :boolean;
OnCreate
PodeFechar := false;
OnCloseQuery
Canclose := PodeFEchar
Dae o form não fecha a não ser que vc passe a variavel PodeFechar = True
tipo em botão Fechar,
Dae no botão fechar antes de fazer isso vc valida se esta em modo de edição.
na verdade eu faço assim nos meus forms
public
PodeFechar :boolean;
OnCreate
PodeFechar := false;
OnCloseQuery
Canclose := PodeFEchar
Dae o form não fecha a não ser que vc passe a variavel PodeFechar = True
tipo em botão Fechar,
Dae no botão fechar antes de fazer isso vc valida se esta em modo de edição.
GOSTEI 0
Lenasi
25/08/2009
pode verificar se o .State <> dsBrowser do seu dataset principal
na verdade eu faço assim nos meus forms
public
PodeFechar :boolean;
OnCreate
PodeFechar := false;
OnCloseQuery
Canclose := PodeFEchar
Dae o form não fecha a não ser que vc passe a variavel PodeFechar = True
tipo em botão Fechar,
Dae no botão fechar antes de fazer isso vc valida se esta em modo de edição.
Então, se o usuário por um acaso alterou um campo e tenta sair sem gravar, seria notificado?
Se nada for alterado, sai normalmente?
GOSTEI 0
Osocram
25/08/2009
é so vc verificar o estado do dataSet...
no OnCloseQuery vc pode fazer algo assim
if (cds.State = dsBrowser) then begin
PodeFechar := false;
showmessage(´Não pode fechar a tela pois tem alterações pendentes.´);
end;
Agora é so vc inventar como quer proteger.
no OnCloseQuery vc pode fazer algo assim
if (cds.State = dsBrowser) then begin
PodeFechar := false;
showmessage(´Não pode fechar a tela pois tem alterações pendentes.´);
end;
Agora é so vc inventar como quer proteger.
GOSTEI 0