Array
(
)

Verificar se campo (Field) foi modificado

Biodelphi
   - 03 fev 2006

Alguem sabe como devo proceder para saber se algum determinado campo de uma tabela sofreu alguma alteração

a principio faço assim
if DBEdit.Modified then

mas se eu não fecho o formulario uma ves alterado esta propriedade para true depois que salvo o registro ela permanece como True

e tmb quando o campo possui mascara só passando com enter por cima do Dbedit ele já altera esta propriedade automaticamente para true


Nadai_
   - 03 fev 2006

na datasource, no evento ondatachange

if field <> nil then
begin
if AnsiSameText(Field.FieldName, ´nome_campo´) then
begin
ShowMessage(´alterei o campo´);
end;
end;


Biodelphi
   - 03 fev 2006

Obrigado Nadai_

essa eu não sabia

mas para q precisava mesmo era que antes de savar

verifica-se se tal classificação ja tivesse cadastrada

esta condição abaixo faço pq se não houve-se DbEdit1.Modified
quando altero qualquer outro campo e salvo ele executa esta condição abaixo

fis assim


// verifica se a classificação já foi digitada
if (DbEdit1.Modified) and (TabAux.Locate(´classificacao´,TablePlanoCLASSIFICACAO.AsString,[])) then
Raise Exception.create(´Classificação já digitado!´);