PDA

Ver la Versión Completa : Consulta LOOP


ebelyn
12/05/09, 12:59:24
Hola tengo que recorrer la tabla ERDZ y tomar el valor mas pequeño que toma la fecha AB y guardarlo y el valor mas grande que toma la fecha BIS y tambien guardarlo.
Muchas Gracias a todos!:confused:

abapconsultoria
12/05/09, 16:18:06
Que tal Aca te envio un fragmento de codigo.

Espero que te sea util.

Saludos.

data : v_ab like ERDZ-ab,
v_bis like ERDZ-bis.

loop at ERDZ.
at first.
v_ab = ERDZ-ab.
v_bis = ERDZ-bis.
endat.
if v_ab > ERDZ-ab.
v_ab = ERDZ-ab.
endif.

If v_bis < ERDZ-bis.
v_bis = ERDZ-bis.
endif.
endloop.

Tonnyman
12/05/09, 19:27:52
Hola,

se me ocurre que podrias hacer 2 sort's.

sort erdz by AB descending, y tomar el valor que necesitas.

Sort erdz by BIS, y tomar el valor que necesitas.

En ambos casos harias un read table ERDZ con un index 1.

Espero haberte sido de ayuda.

Saludos.

bisonye
13/05/09, 06:06:39
Las dos soluciones son buenas pero habria que comprobar cual es más rápida.

Hay veces que los sort's tardan una eternidad.

Saludos

abapconsultoria
13/05/09, 17:15:06
Calculo que lo del loop es lo mas rapido ya que no conozco algoritmo de ordenamiento alguno que utilice menor a una pasada sobre la tabla a ordenar.

Igual seria bueno probarlo.

Saludos.

Javier.

Bond_2006
13/05/09, 19:13:59
Hola

Pero podrias hacer un select con el MAX(CAMPO1) y otro con MIN(CAMPO2)

Espero te ayude

saludos :cool: