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:
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:
- Selecione o controle na caixa de ferramentas.
- Desenhe o controle em seu formulário.
- Defina a propriedade DatabaseName
- Defina a propriedade Recordsource
- Defina a propriedade RecordsetType
- Abrir o banco de dados e as tabelas ou consultas associadas.
- Navegar pelos registros.(Utiliza métodos MoveFirst,Movelast,Movenext e Moveprevious.)
- Carregar os valores diversos campos nos controles utilizados para exibir e editar os dados.
- Gravar os dados editados dos controles no Recordset
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.)
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 :
- DatabaseName - Para bancos de dados do Access, representa o nome do arquivo do banco de dados, inclusive o nome compleo do caminho. (Para banco de dados diferentes do Access é necessário informar o nome do caminho até o subdiretório dos dados.Ex-Para padrão Dbase : DatabaseName=c:\dir)
- RecordSource - Especifica as informações que deseja obter no banco de dados - uma tabela , uma instrução SQL .
- RecordsetType - Se deseja criar um 2-snapshot ou um acessar uma 0-table altere esta propriedade, pois o padrão é 1-dynaset.
- Connect - Necessária quando o banco de dados não for do Access. Ex - Para banco de dados padrão Dbase - Connect=dBASEIII.
É 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údoControl 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.
- Vínculo direto com os dados.Você não precisa invocar os métodos Edit e Update para modificar os dados contidos no banco de dados. As alterações aparecem no banco de dados tão logo são digitadas.
- Os varios controles vinculados(DbList, DbCombo, DbGrid, ...) oferecem um meio fácil de realizar tarefas que via código seriam complexas,
As limitações do Controle de dados
- Não apresentam função para alterar ou excluir registros.
- É mais difícil a implementação do processamento de transações.
- Um número excessivo de controles vinculados em um formulário torna a sua carga mais lenta.
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.MoveLastObserve 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:Outro evento que pode ser utilizado para validar dados é o evento Reposition:
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 SubEvento 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.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:
- Todos os controles vinculados informam ao Controle Data as alterações ocorridas no seu conteúdo.
- O Controle Data gera um evento Validate, indicando a ação tomada.
- O Controle Data salva os dados no banco de dados , ou se for o caso gera um evento Error
- O Controle se move para o registro solicitado e gera um evento Reposition informando a todos os controles vinculados os novos valores dos campos
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