VOLTAR AO INICIO DE UM LACO

FAUZE 11/02/2013 11:36:51
#419122
Bom dia Pessoal,

Como faço para voltar ao inicio de um laço após satisfazer uma condição e continuar nele até que atinja EOF, seja While ou For?
JABA 11/02/2013 21:20:39
#419140
é só você atribuir um valor para o contador do loop.

Ex:

dim i as integer = 0

for i = 0 to 10
if valor < 50 then
i = 0
end if
next

Ou seja, se o valor for menor do que 50, o contador volta ao seu estado inicial.

vlw
PAULOOLIVEIRA 11/02/2013 23:50:42
#419144
se for num recordset...

if recordset.recordcount >0 then recordset.movefirst
while not recordset.eof
recordset.movenext
if recordset.eof()
recordset.movefirst
endif
wend

claro que é um loop infinito neh?!
FAUZE 13/02/2013 10:28:45
#419187
Caros amigos, obrigado, mas acho que não é isso que estou precisando, vou colocar o código abaixao:
     While Not rst.EOF
If InStr(rst!descricao, [Ô]INATIVO[Ô]) > 0 Then
rst.MoveNext
[ô] nesse ponto preciso voltar ao ínico do While para dar sequencia
[ô] No Clipper eu usava o Loop
[ô] Qual o comando que substitui o Loop do clipper?

End If

nConta1 = nConta1 + 1
ProgressBar1.Value = nConta1

If IsNull(rst!descricao) = True Or rst!p_venda = 0 Then
Print #2, [Ô]Produto:[Ô] & rst!cod_bar & [Ô] Sem descrição ou valor = zero[Ô]

Else
cConteudo = [Ô]005[Ô]
cConteudo = cConteudo & Trim(rst!cod_bar) & Space(20 - Len(Trim(rst!cod_bar)))
cConteudo = cConteudo & Trim(Left(rst!descricao, 40)) & Space(40 - Len(Trim(Left(rst!descricao, 40))))

If IsNull(rst!unidade) = True Then
cConteudo = cConteudo & [Ô]PC [Ô]

Else
cConteudo = cConteudo & Trim(Left(rst!unidade, 3)) & Space(3 - Len(Trim(Left(rst!unidade, 3))))

End If

Print #1, cConteudo

nConta = nConta + 1

End If

rst.MoveNext

Wend
EDUFS 13/02/2013 14:29:23
#419198
Gambiarra....
[txt-color=#e80000]IN ICIO[/txt-color]
While Not rst.EOF
If InStr(rst!descricao, [Ô]INATIVO[Ô]) > 0 Then
rst.MoveNext
[ô] nesse ponto preciso voltar ao ínico do While para dar sequencia
[ô] No Clipper eu usava o Loop
[ô] Qual o comando que substitui o Loop do clipper?
[txt-color=#e80000]GOTO INICIO [/txt-color]
End If

nConta1 = nConta1 + 1
ProgressBar1.Value = nConta1

If IsNull(rst!descricao) = True Or rst!p_venda = 0 Then
Print #2, [Ô]Produto:[Ô] & rst!cod_bar & [Ô] Sem descrição ou valor = zero[Ô]

Else
cConteudo = [Ô]005[Ô]
cConteudo = cConteudo & Trim(rst!cod_bar) & Space(20 - Len(Trim(rst!cod_bar)))
cConteudo = cConteudo & Trim(Left(rst!descricao, 40)) & Space(40 - Len(Trim(Left(rst!descricao, 40))))

If IsNull(rst!unidade) = True Then
cConteudo = cConteudo & [Ô]PC [Ô]

Else
cConteudo = cConteudo & Trim(Left(rst!unidade, 3)) & Space(3 - Len(Trim(Left(rst!unidade, 3))))

End If

Print #1, cConteudo

nConta = nConta + 1

End If

rst.MoveNext

Wend
Tópico encerrado , respostas não são mais permitidas