USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Problema com Lógica (simples)
Fonseca
SAO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 02/05/2005 17:33 hs            
Boa tarde galera,
gostaria de saber se há uma maneira mai fácil de fazer o seguinte:
executar uma instrução até que seja satisfeita uma ou outra condição, acontece que quando chega no final do arquivo, dá a mensagem: Nenhum registro Atual
While not rs.Eof and rs!Campo = CampoGuardado
 .....
 .....
Loop
CampoGuradado = rs!Campo
.....
.....
 
Estou fazendo assim: (e funciona, só tem desta maneira ?)
While not rs.Eof
   if rs!Campo = CampoGuardado then
       ....
       ....
   else
       exit do
   endif
Loop
CampoGuradado = rs!Campo
.....
.....
 
Obrigado pela atenção []´s
 
   
Martini
Pontos: 2843 Pontos: 2843
PAROBÉ
RS - BRASIL
ENUNCIADA !
Postada em 02/05/2005 20:11 hs         
em vez de testar a cada registro se o campo é igual ao campo, seria melhor selecionar apenas os registros desejados  ...
 
dim rst as recordset
set rst = vgdb.openrecordset ("Select * from Campo = " + campoguardado)
if rst.recordcount > 0 then
  do while not rst.eof
 
    rst.moveMin
  loop
endif
   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
ENUNCIADA !
Postada em 03/05/2005 02:15 hs            
Fonseca,
 
Realmente selecionar apenas os registros que interessam como o Martini disse é o mais logico, mas se vc precisar dos outros registros em outro momento da rotina, precisa fazer o select pra selecionar todos... ai tenho uma sugestao:
 
Sua solução, com o If aninhado, é realmente a mais logica... tem como fazer como vc disse, com as condiçoes diretamente no Do, mas precisaria mais informaçoes sobre seus objetivos com o loop pra saber como montar direitinho...
Eu gosto do If aninhado, mas faço apenas uma coisa diferente... dá uma olhada:
 
While not rs.Eof
   if not rs!Campo = CampoGuardado then exit sub
       ....
       ....
Loop
CampoGuradado = rs!Campo
 
Assim fica mais rapido pro computador processar, por nao ter que fechar o If...
é a unica mudança que posso sugerir com as informaçoes q vc deu...
 
Mas lembre-se que se for possivel selecionar apenas os registros onde rs.Campo = CampoGuardado, fica muito mais rapido e facil... nao desprese a dica do Martini...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

   
Fonseca
SAO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 05/05/2005 16:41 hs            
Obrigado aos dois, a opção do Martini não serve prá mim, pois uso outros valores no CampoGuardado, vou experimentar a opção do Elieser.
 
Emoções
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página