Conteúdo

O Controle de dados : DATA CONTROL.


Oque é o Controle de dados Vinculados.

O controle de dados foi criado para proporcionar um meio simples de acesso a um banco de dados. Para usar o controle de dados, siga os passos a seguir:
  1. Selecione o controle na caixa de ferramentas.
  2. Desenhe o controle em seu formulário.
  3. Defina a propriedade DatabaseName
  4. Defina a propriedade Recordsource
  5. Defina a propriedade RecordsetType
A essa altura você criou os vínculos para o banco de dados e o Recordset com o qual deseja trabalhar. O controle assume para si as tarefas de:
  1. Abrir o banco de dados e as tabelas ou consultas associadas.
  2. Navegar pelos registros.(Utiliza métodos MoveFirst,Movelast,Movenext e Moveprevious.)
  3. Carregar os valores diversos campos nos controles utilizados para exibir e editar os dados.
  4. Gravar os dados editados dos controles no Recordset

    Conteúdo

Funcionamento e Utilização.

Com base nas propriedades Name e RecordSource o controle de dados cria um Recordset que fornece acesso aos seus dados.

fig1.
De início selecione o objeto controle de dados na Toolbox do Visual Basic e acrescente-o ao seu formulário.(Fig.1)
fig2. Defina a seguir as propriedades Name - Nome do Controle (O padrão é data1) e Caption - Especifica o nome que aparece no controle de dados.(O padrão é Data1) e dimensione o controle de dados.(Fig.2)

fig3.
A seguir acrescente ao seu formulário um quadro de texto(TextBox) para cada campo que desejar acessar a partir do Recordsource, anexe cada quadro de texto ao objeto de controle de dados(DataSource) e especifique o campo que cada quadro de texto deverá exibir(DataField).(fig3.)

Conteúdo

Definição das Propriedades.

Agora você deve associar um banco de dados e um recordset a um controle de dados definindo as propriedades do controle. As propriedades necessárias a isso são :

É possível optar por ativar essas propriedades durante a execução do seu aplicativo. Vejamos um exemplo:
Você acrescentou um controle dados a seu formulário e definiu a propriedade Name como Data1, e quer ter acesso no arquivo TESTE.MDB (arquivo access) aos dados da tabela clientes, vejamos o código abaixo:


  data1.DatabaseName="C:\TESTE\TESTE.MDB"    'path/nome do arquivo
  data1.RecordSource="Clientes"                          'fonte dos dados(tabela clientes)
  data1.recordsetType=0                                      'tipo de recordset(0-tabela)
  data1.Refresh                                                      'implementa as alterações

Conteúdo 

Control Data: Vantagens/Limitações.

Vantagens Controle de Dados
A principal vantagem do controle de dados é a necessidade de menor trabalho de programação para desenvolver um aplicativo de acesode dados. Você não precisa fornecer código de programa para abrir ou criar um banco de dados ou um recordset, para se movimentar pelos registros ou para editar registros.

As limitações do Controle de dados

Conteúdo

Adição, Alteração , inclusão e validação de dados

Para contornar a ausência de funções para excluir e alterar registros podemos acrescentar as mesmas á tela de entrada de dados usando comandos de programa atribuídos a um botão de comando ou a eventos do controle de dados. Vejamos um exemplo de código que poderia ser atribuído a botões de comando de um formulário de entrada de dados:
1-Botão para inclusão de dados:

    data1.Recordset.AddNew

2-Botão para exclusão de dados:

    data1.Recordset.Delete
    data1.Recordset.MoveLast
Observe que não foi necessário utilizar o comando Update, pois as atualizações são feitas automaticamente pelo controle de dados quando do deslocamento para um novo registro ou ao fechar o formulário através dos eventos Validate e Reposition.

Validate
Este evento ocorre sempre antes de um registro se tornar o registro corrente ou antes da execução do método Update ou antes da exclusão de um registro ou do fechamento do recordset/formulário; Você pode associar a este evento o código para validação de seus dados , como no exemplo abaixo:

Private Sub data1_Validate(Action As Integer, Save As Integer)

If Save Then
  Select Case MsgBox("Salvar Alterações ?", vbQuestion + vbYesNo)
    Case vbYes '6
     If nome.Text = Empty Then
        MsgBox "Informe o nome do Cliente !", , "Gravar Clientes"
        nome.SetFocus
        Save = False
        Action = vbDataActionCancel
        Exit Sub
     ElseIf endereco.Text = Empty Then
        MsgBox "Informe endereço do cliente !", , "Gravar Clientes"
        endereco.SetFocus
        Save = False                '-não salva 
        Action = vbDataActionCancel '-cancela
        Exit Sub
     End If
    Case vbNo  '7
      Save = False
      End Select
End If
End Sub
Outro evento que pode ser utilizado para validar dados é o evento Reposition:

Evento Reposition
Ocorre sempre após o controle posicionar o registro corrente e após a carga do recordset pelo controle Data, neste momento o primeiro registro do recordset torna-se o registro corrente e o evento Reposition é gerado.

Conteúdo

Movendo-se em um recordset com o Controle Data.

Quando você move o registro corrente do recordset, através dos botões de comando disponíveis , temos as seguintes ações sendo executadas:

  1. Todos os controles vinculados informam ao Controle Data as alterações ocorridas no seu conteúdo.
  2. O Controle Data gera um evento Validate, indicando a ação tomada.
  3. O Controle Data salva os dados no banco de dados , ou se for o caso gera um evento Error
  4. O Controle se move para o registro solicitado e gera um evento Reposition informando a todos os controles vinculados os novos valores dos campos

Conteúdo

Considerações Finais

Você pode utilizar o controle de dados sozinho no caso de aplicativos em que o usuário tenha acesso somente para leitura ou quando não existe a necessidade de inclusão/exclusão de registros.
O Controle de dados é ótimo para prototipação de um aplicativo, pois você pode desenvolver rapidamente os formulários.
Para um sistema multiusuário de uso intenso o controle de dados pode não ser uma boa escolha, pois pode aumentar a quantidade de conflitos de bloqueio de registros.
Provavelmente a melhor solução seja o uso combinado dos controle de dados e de código de programa.

Conteúdo

Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


Retorna