Filter x Controle de Acessso

08/07/2004

0

Bem,
volto com um asssunto que não consegui resolver. Alguns dias atrás, coloquei esse problema no fórum, mas não tive sucesso e não consegui resolver. Alguns me deram dicas mas não consegui.

Situação: Tenho um Formulário de Faltas que só poderá ser editado. São Faltas de uma turma. Escolho a turma, e através do filter, aparece todos os alunos dessa turma em uma DBGrid. Preencho com Falta ou Presença (P ou F). Ao Preencher, o código de acesso do usuário fica registrado em um campo que está na própria tabela. Até aí tudo bem.

O problema: Vamos supor que um outro usuário volte a mesma tabela e edite alguns registros. Como eu poderia identificar se os alunos recebem um valor (P ou V) diferente do que estava, para poder colocar o novo código de indentificação do usuário.

Valeu!!

JR.


Jrjoliv2003

Jrjoliv2003

Responder

Posts

09/07/2004

Jrjoliv2003

Galera!!!

Pesquisando, encontrei isso aqui:

if (dm.tbCLIENTES.Modified) or
(dm.tbCLIENTES.State <> dsSetKey) then
begin

end;


Mas vamos supor que dos 20 registros que apareça na DBGrid, 7 sejam modificados (via DBGRid) e nesses modificados tenha que colocar o código de idetificação do usuário.

Como faço isso? Tô confuso!!!

Se puder me ajudar...

JR. :roll:


Responder

10/07/2004

Beppe

Use o evento OnUpdateRecord. Nele vc setá o campo de código do usuário para o código do usuário atual.


Responder

10/07/2004

Jrjoliv2003

Mas só posso inserir o novo código do usuário se houver modificação na tabela!!!

JR.


Responder

10/07/2004

Beppe

Naum existe uma propriedade Modified?


Responder

11/07/2004

Jrjoliv2003

Consegui colocando uma tabela temporária (IBTable).
Veja como ficou:

data.IBTempFal.Active:=true;
data.IBTFal.First;
data.IBTempFal.First;

While Not data.IBTFal.Eof Do
Begin
If ( data.IBTFalFAL_FALTOU.Value <> data.IBTempFalFAL_FALTOU.Value ) Then
Begin
data.IBTFal.Edit;
data.IBTempFal.Edit;

data.IBTempFalFAL_FALTOU.Value:=data.IBTFalFAL_FALTOU.Value;
data.IBTempFalFAL_FUNMATRI.Value:=data.IBQLoginUSU_FUNMATRI.Value;
data.IBTFalFAL_FUNMATRI.Value:=data.IBQLoginUSU_FUNMATRI.Value;

data.IBTFal.Post;
data.IBTempFal.Post;

data.IBTFal.Next;
data.IBTempFal.Next;
end
else
Begin
data.IBTFal.Next;
data.IBTempFal.Next;
end;
end;
end;


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar