Agradezco tu respuesta, tal vez como es mi primera vez, me hace falta ser más dinámico en mis comentarios.... imaginate. tal vez no es la sentencia, sino que delphi en otras sentencias if.... hace su paso por la parte falsa y la verdadera al mismo tiempo, efectivamente esto hace parte de un bucle
Código Delphi
[-]
while true do
begin
CodEqMzVal := Geo.RetornaCodigoEqMzVal(QGeoVarios,temp,Ciudad);
if CodEqMzVal <> '' then
begin
CodEqMzValOk := CodEqMzVal;
CodMzNivOk := Geo.RetornaNivelYNomMzVal(QGeoVarios,CodEqMzValOk,Ciudad,NomMzVal);
NivelOk := Geo.RetornaNivelMzNiv(QGeoVarios,CodMzNivOk,Ciudad,NombreNivel,SiTabla);
iok := i;
i := i+1;
if i < ListaPalabras.Count-1 then
temp := temp + ' ' + ListaPalabras[i];
else
break;
end
else
begin
i := i+1;
if i < ListaPalabras.Count-1 then
temp := temp + ' ' + ListaPalabras[i]
else
break;
end;
end;
Mira yo le doy vueltas y vueltas y no entiendo xq sucede y no es en la única parte que pasa. hace esto en el primer if y pasa normal por el segundo...
ListaPalabras es un TStringList, en el cual almaceno las palabras de una frase.
Espero haberme hecho entender... gracias...