Ir al contenido

Duda

Respuestas
3
Visitas
11
Iniciado por
asclevius
Fecha
18 Ago 2011, 22:48
Tema anterior - Siguiente tema

asclevius

Hola a todos llevo 2 dias estudiando abap, es que tengo una duda, estoy en una subrutina y hago el siguiente select:


SELECT kunag fkdat fktyp waerk netwr INTO TABLE IT_vbrk
      from VBRK FOR ALL ENTRIES IN IT_client
      WHERE fktyp = tipofact  AND
            kunag <> IT_client-kunag.



ahora el problema es que no se como imprimir el resultado del select???? si alguien me puede ayudar se lo agradecería.

Enrique.Borroni

Estimado...lo puedes hacer de la siguiente forma....no es la mejor ni la mas bonita...pero funciona....espero te ayude.

LOOP AT it_vbrk.

  WRITE :/001 it_vbrk-kunag,
          015 it_vbrk-fkdat,
          025 it_vbrk-fktyp,
          035 it_vbrk-waerk,
          055 it_vbrk-netwr.
ENDLOOP.
Saludos.

Atte.,
Enrique Borroni

maito : enrique.borroni@abap.es

Carlos

Hola,

Aparte de lo que comenta Enrique (que esta perfecto), quiero puntualizar un consejo.

Cuando utilices la instrucción FOR ALL ENTRIES IN it_client, como sugerencia debes de meter dentro de un IF el SELECT.

IF it_client[] IS NOT INITIAL.
  SELECT kunag fkdat fktyp waerk netwr INTO TABLE it_vbrk
    FROM vbrk FOR ALL ENTRIES IN it_client
   WHERE fktyp = tipofact
     AND kunag <> IT_client-kunag.
ENDIF.


De esta manera conseguimos que si tu tabla interna (en este caso... it_client) no tuviera resultados evitamos que entre al SELECT porque te seleccionaría todos los resultados.




asclevius

carlos enrique muchas gracias por su ayuda han sido de mucha utilidad
:D