DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Artigo Clube Delphi Edição 51 - DataSetProvider Avançado

Artigo da Revista Clube Delphi Edição 51.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você gostaria de comentar o que não lhe agradou?

Esse artigo faz parte da revista Clube Delphi edição 51. Clique aqui para ler todos os artigos desta edição



Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

DataSetProvider Avançado

Armazene em log todas as alterações feitas no banco de dados

 

Neste artigo veremos como utilizar alguns recursos avançados do DataSetProvider e do ClientDataSet para fazer log de todas as atualizações enviadas ao banco de dados. A partir desses logs, você poderá, por exemplo, identificar e recuperar registros excluídos ou modificados de forma indevida por um usuário do sistema.

O que faremos basicamente será salvar todos os DataPackets de atualização (os chamados Deltas) em arquivos no disco, juntamente com informações sobre o usuário, data/hora, tabela atualizada etc. Essa abordagem é bastante flexível: você poderá adaptar a solução à qualquer aplicação (desde que faça uso de

ClientDataSets e DataSetProviders), independente do banco de dados que esteja utilizando.

 

Construindo a aplicação de exemplo

Crie uma nova aplicação no Delphi e adicione um DataModule ao projeto (chame-o de "DM"). Acredito que o leitor já está familiarizado com a criação de aplicações de banco de dados usando dbExpress, de forma que não entrarei em detalhes sobre a configuração dos componentes. Caso você nunca tenha feito uma conexão dbExpress, poderá ler um artigo introdutório que colocamos no portal do assinante (www.clubedelphi.com.br/portal).

Veja na Figura 1 os componentes utilizados e formulário principal da aplicação com os controles Data-Aware. Aqui estou acessando o banco de dados Employee.gdb dos demos do Interbase. O SQLQuery obtém dados da tabela Customer e tem a seguinte instrução SQL: "select CUST_NO,CU5TOMER,CITY from CUSTOMER”. Veja a seguir o código colocado no evento OnClick do botão Aplicar:

 

procedure TForrn1.Button1lClick(Sender: TObject);

begin

{Declare DBClient no uses}

(DataSource1.DataSet as

TClientDataSet).ApplyUpdates(O);

end:

 

Figura 1.Formulário principal da aplicação e DataModule

 

Antes de continuarmos o exemplo, é importante lembrar como funciona o tratamento de DataPackets feito pelo DataSetProvider."

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Guinther Pauli.
Microsoft Certified Professional - MCP,MCAD,MCSD.NET,MCTS,MCPD (C#, ASP.NET, Arquitetura), MVP, Delphi Certified Professional, Colaborador Editorial Revistas .net Magazine e ClubeDelphi http://www.gpauli.com http://www.facebook.com/guintherpauli http://www.twitter.com/guintherpauli http://br.li...
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03