Corrijam meu loop
Quando caio no primeiro NEXT, quero que ele volte para a linha while
e não prossiga para a linha Env.
Como corrigir?
DadosQ.First;
while not DadosQ.Eof do
begin
if ModifyCB.Checked then
begin
if DadosQ.FieldByName(´DAD_MUDOU´).AsString = ´N´ then
DadosQ.Next;
end;
Env := DadosQ.FieldByName(´DAD_COD´).AsInteger;
Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString));
NMHTTP1.Get(EndHttpEd.Text+Texto);
DadosQ.Next;
e não prossiga para a linha Env.
Como corrigir?
DadosQ.First;
while not DadosQ.Eof do
begin
if ModifyCB.Checked then
begin
if DadosQ.FieldByName(´DAD_MUDOU´).AsString = ´N´ then
DadosQ.Next;
end;
Env := DadosQ.FieldByName(´DAD_COD´).AsInteger;
Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString));
NMHTTP1.Get(EndHttpEd.Text+Texto);
DadosQ.Next;
Wgm8
Curtidas 0
Respostas
Marcelo Saviski
20/12/2004
Tente com o Continue:
É isso?
DadosQ.First; while not DadosQ.Eof do begin if ModifyCB.Checked then begin if DadosQ.FieldByName(´DAD_MUDOU´).AsString = ´N´ then begin DadosQ.Next; Continue; <<< Tente isso aqui end; end; Env := DadosQ.FieldByName(´DAD_COD´).AsInteger; Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString)); NMHTTP1.Get(EndHttpEd.Text+Texto); DadosQ.Next; (...)
É isso?
GOSTEI 0
Fknyght
20/12/2004
DadosQ.First; while not DadosQ.Eof do begin if ( ( ModifyCB.Checked ) and ( DadosQ.FieldByName(´DAD_MUDOU´).AsString = ´N´ ) ) then DadosQ.Next else begin Env := DadosQ.FieldByName(´DAD_COD´).AsInteger; Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString)); NMHTTP1.Get(EndHttpEd.Text+Texto); DadosQ.Next end; end;
GOSTEI 0
Marbravo
20/12/2004
Primeiro vc deve tomar uma postura na hora de escrever o codigo para quando for ler não ser tão dificil. Procure dar dois escpaços antes que qualquer nova pergunta que esteja dentro de outra. + OU - Assim:
[color=green:2e7ffbb0e7][i:2e7ffbb0e7]Editado Saviski - ativado BBCode[/i:2e7ffbb0e7][/color:2e7ffbb0e7]
DadosQ.First; while not DadosQ.Eof do begin if ModifyCB.Checked then begin if DadosQ.FieldByName(´DAD_MUDOU´).AsString = ´N´ then DadosQ.Next; end else begin Env := DadosQ.FieldByName(´DAD_COD´).AsInteger; Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString)); NMHTTP1.Get(EndHttpEd.Text+Texto); DadosQ.Next; end; end;
[color=green:2e7ffbb0e7][i:2e7ffbb0e7]Editado Saviski - ativado BBCode[/i:2e7ffbb0e7][/color:2e7ffbb0e7]
GOSTEI 0
Emerson Nascimento
20/12/2004
DadosQ.First;
while not DadosQ.Eof do
begin
    if not ModifyCB.Checked or (DadosQ.FieldByName(´DAD_MUDOU´).AsString ´N´) then
    begin
        Env := DadosQ.FieldByName(´DAD_COD´).AsInteger;
        Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString));
        NMHTTP1.Get(EndHttpEd.Text+Texto);
    end;
    DadosQ.Next;
end;
while not DadosQ.Eof do
begin
    if not ModifyCB.Checked or (DadosQ.FieldByName(´DAD_MUDOU´).AsString ´N´) then
    begin
        Env := DadosQ.FieldByName(´DAD_COD´).AsInteger;
        Texto := DadosFunction(Str2Int(DadosQ.FieldByName(´DAD_COD´).AsString));
        NMHTTP1.Get(EndHttpEd.Text+Texto);
    end;
    DadosQ.Next;
end;
GOSTEI 0