Ir para conteúdo
Fórum Script Brasil
  • 0

Adodc


Denis_Rave

Pergunta

Não sei se isto já foi perguntado, não achei na busca

Mas eu gostaria de saber se existe algum código que eu posso utilizar para dar um .refresh em todos os ADO's do meu projeto...

Acho que seria alguma coisa com For... Each......mas não sei bem ao certo se isso realmente existe..

Se alguém pudesse me ajudar eu agradeceria ^^

Flwsss

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

Certo Graymalkin..pelo que eu entendi, eu vou buscar todos os controle ADO's no Form que eu estarei rodando o For Each...

Pegunto ainda se eu terei que fazer um For Each para cada formulário, ou se existe um jeito de aplicar isto a todos os forms? Seria usando um For Each dentro de outro For Each não é??

Tp, primeiro eu procuro todos os forms, e dentro eu procuro por todos os ADO's, correto?

Abraços...

Link para o comentário
Compartilhar em outros sites

  • 0

Certo Graymalkin..pelo que eu entendi, eu vou buscar todos os controle ADO's no Form que eu estarei rodando o For Each...

Pegunto ainda se eu terei que fazer um For Each para cada formulário, ou se existe um jeito de aplicar isto a todos os forms? Seria usando um For Each dentro de outro For Each não é??

Tp, primeiro eu procuro todos os forms, e dentro eu procuro por todos os ADO's, correto?

Exatamente. No caso, os forms podem ser encontrados na coleção Forms, e os controles na coleção Controls de cada form.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Errr...uma coisa...

Eu preciso estar com os forms carregados?

não tem um jeito, tp, a partir de um único form, executando o FOr Each, realizar o .refresh

tou usando esse código

Dim Formu As Form
Dim Ad As Control
For Each Formu In Forms
    For Each Ad In Formu.Controls
        If TypeOf Ad Is Adodc Then
            Ad.Refresh
        End If
    Next
Next

acontece,que quando eu tou só com o form principal aberto, esse código só executa um unico Refresh...que é o do ADO que está presente neste form...

eu teria que carregar todos os forms? e dps descarrega-los? ou tem outro jeito?

Link para o comentário
Compartilhar em outros sites

  • 0

Errr...uma coisa...

Eu preciso estar com os forms carregados?

não tem um jeito, tp, a partir de um único form, executando o FOr Each, realizar o .refresh

tou usando esse código

Dim Formu As Form
Dim Ad As Control
For Each Formu In Forms
    For Each Ad In Formu.Controls
        If TypeOf Ad Is Adodc Then
            Ad.Refresh
        End If
    Next
Next

acontece,que quando eu tou só com o form principal aberto, esse código só executa um unico Refresh...que é o do ADO que está presente neste form...

eu teria que carregar todos os forms? e dps descarrega-los? ou tem outro jeito?

Ué? Mas, só é interessante você fazer Refresh nos forms carregados. Pra quê fazer Refresh em um form que ainda não foi carregado? Se você atualiza algo agora e o form é aberto depois ele já vai aparecer com os dados atualizados (uma vez que ele foi carregado *depois* da atualização). Só em interessante dar Refresh nos forms que já estão abertos no momento de uma alteração (e que consequentemente ficariam desatualizados, se não fosse o refresh). Não concorda?

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Sim claro! Absolutamente...

Mas é que no programa que estou desenvolvendo...a maioria dos forms estão abertos ao mesmo tempo...e eu estaria aproveitando para dar um novo comando sql neles...ateh mesmo nos forms que não estão abertos...por isso eu iria usar esse código...

Abraços..

Link para o comentário
Compartilhar em outros sites

  • 0

Sim claro! Absolutamente...

Mas é que no programa que estou desenvolvendo...a maioria dos forms estão abertos ao mesmo tempo...e eu estaria aproveitando para dar um novo comando sql neles...ateh mesmo nos forms que não estão abertos...por isso eu iria usar esse código...

Bom, não sei se você realmente entendeu, mas os forms que estão abertos *vão* ser atualizados, mas os que *ainda* serão abertos já vão ter os dados atualizados (então não existe necessidade de "avisá-los" para atualizar). Seria como você chegar a casa, e alguém te avisar pela janela que o telefone está tocando. É bem óbvio que quando você entrasse na casa você escutaria o telefone tocando, então não havia necessidade da pessoa avisar. Sacou agora? ;)

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

SIm Sim xD

bem óbvio...mas digamos, reformulando a pergunta

Se eu quisesse mudar o Source de todos os ADO's, ateh mesmo dos pertencenter aos Forms não carregados...como eu faria isso?

Ah sim, nesse caso você realmente precisaria carregar os forms antes, já que você não tem como mudar algo que ainda não existe. Uma vez carregados, eles farão parte da coleção Forms.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

^_^

Certo então...

Era só porque eu estava usando um ADO de um form não carregado para poder efetuar uma rotina de exclusão no form principal, porque, para isso eu teria que percorrer todos os registros...e não poderia usar o ADO do form principal...por isso a dúvida quanto à atualizar os ADO's

Vlw Graymalkin ^^

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...