MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    Melhor forma de trabalhar com dados

    José
    José
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 118
    Registrado : 14/03/2010

    Melhor forma de trabalhar com dados Empty Melhor forma de trabalhar com dados

    Mensagem  José 24/10/2011, 16:30

    Tenho um sisteminha em access 2003/winxp que é multiusuario onde as tabelas estão divididas e localizadas em um servidor.

    Ao abrir um dos formulários, é feita o acesso várias vezes a tabela para pesquisar dados (estoque de peças) para ver se a mesma tem quantidade suficiente e após constatar que possui, ao finalizar da digitação é solicitada que salve nas tabelas os dados.

    O problema é que como o acesso é feita várias vezes, isto poderá deixar o sistema lento.

    Existe uma forma de carregar os dados em variáveis (array)? Isto é possível e tornaria o sistema mais ágil?
    Como poderia ser feito?

    Agradeço antecipadamente a ajuda de todos.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    Melhor forma de trabalhar com dados Empty Re: Melhor forma de trabalhar com dados

    Mensagem  criquio 24/10/2011, 18:00

    Você poderia carregar os dados em uma listbox e deixá-los à disposição para ser usado posteriormente sem a necessidade de ir novamente à tabela para buscá-los. Vamos supor uma tabela de nome tblProdutos, que esteja vinculada no frontend. Nessa tabela você precisa carregar os campos Código, Descrição e ValorUnitário na listbox lstProdutos. Poderia-se usar algo assim no evento "Ao carregar" do formulário:

    Dim rs As Recordset ' Crie uma variável Recordset
    Set rs = CurrentDb.OpenRecordset("tblProdutos") ' Instancie a variável

    Me.lstProdutos.RowSource = "" ' Limpe a listbox
    Me.lstProdutos.RowSourceType = "value list" ' Defina a origem da listbox como uma "lista de valores"

    Do While Not rs.EOF ' Enquanto não chegar ao fim da tabela
    Me.lstProdutos.AddItem rs!Código & ";" & rs!Descrição & ";" & rs!ValorUnitário ' adicione a primeira linha
    rs.MoveNext ' Passe para a próxima linha
    Loop ' Faça um loop até chegar ao fim da tabela

    rs.Close ' Feche a tabela
    Set rs = Nothing ' Limpe o Recordset da memória


    OBS.: Se a lista de valores for muito grande, de muitos milhares de registros, pode ser que não caibam todos na listbox. Você pode contornar usando filtros para limitar à um tipo de produto por exemplo. Outra coisa é que, como a list não está vinculada à tabela, uma vez que ela armazenou os dados e fechou a tabela, novos registros porventura adicionados posteriormente não estarão disponíveis. Você pode fazer um Requery na listbox quando necessário, ou você pode criar uma função com o código acima ao invés de colocar ele no evento "Ao carregar" do form e chamar essa função nesse evento e sempre que quiser atualizar a listbox.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


      Data/hora atual: 23/11/2024, 10:09