Reporte ALV no me trae datos

Hola amigos me encuentro realizando un reporte ALV tengo parte del programa realizado pero mis consultas no funcionan no me traen datos quisiera que me ayudaran por fa

Luisa, no podemos adivinar en qué fallas si no vemos el código.
Lee cómo cargar el código al repositorio ABAP de Consultoria-SAP, y carga tu código así otros abapers lo leen y te dicen dónde está tu falla.

Saludos

Revisa si tu tabla interna LT_INTERNA está llena al momento que llamas a CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

1 me gusta

@jmore21 No, esta llenado, realice un debugging y no todo sigue sin ningún dato.

Revisa a nivel de tabla ya sea por la SE11 o SE16, allí ingresa las condiciones de selección que haces a tus tablas.

Estoy revisando y hasta ahora todas las condiciones coinciden con los datos que hay en las tablas.
debería de tráeme Algún dato ya que las tablas tienen datos no se si estoy realizando mal las consultas dudo de ello.

Ten en cuenta que tu parámetro en tu condición WHERE debe estar lleno. Te explico: si utilizas el parametro ABC que el usuario ingresa por la pantalla de selección y este lo colocas en tu sentencia WHERE, si el campo viene lleno te compara con ese valor pero si viene vacío el motor buscará el registro que tenga ese campo VACIO, más no te traerá todos los registros.
Te aconsejaría realizar un where dinámico.

1 me gusta

Si, coincido un poco con los comentarios de arriba.

Para ser más específico, en esta sentencia:

    SELECT *
     INTO CORRESPONDING FIELDS OF LT_INTERNA
     FROM T6B2
     WHERE KAPPL EQ KONA-KAPPL
      AND KOBOG EQ KONA-KOBOG.

Veo que en el código no completas los campos KONA-KAPPL y KONA-KOBOG, por eso es muy probable que estés yendo a ese select con esos campos vacíos y en consecuencia no te traiga nada.

Saludos.

1 me gusta

@luisa_aldana2, creo que si debes llevar pasito a pasito cada query, tanto en el debug como en la tablas en transacciones se11 o se16 para que encuentres donde esta perdiendo la información, recuerda que el “EQ” es el igual y si la comparaciónn de campo viene vacio y tiene la comparación EQ entonces ese Query no te va a traer info. a no ser que en la tabla en el campo tambien este vacio

Sera que la especifico así, estoy un poco confundida y quiero realizar mis consultas por eso les pido que me orienten para asi poder aprender les agradezco a las personas que me están colaborando en mi programa,

  SELECT KAPPL KAPPL
     INTO (KONA-KAPPL, KONA-KOBOG)
     FROM T6B2
     WHERE KAPPL EQ KONA-KAPPL
      AND KOBOG EQ KONA-KOBOG.
1 me gusta

@jmores21
Mira en el debuggin muestra datos pero en el programa no me los muestra…

que pasara? :open_mouth:

Hola, de nuevo creo que encontre algo al respecto con esto

SELECT BOTEXT DATAB DATBI VKGRP BONEM
INTO (KONA-BOTEXT,KONA-DATAB,KONA-DATBI,KONA-VKGRP,KONA-BONEM)
FROM KONA
WHERE DATAB IN DATAB
AND DATBI IN DATBI
AND VKGRP IN VKGRP
AND BONEM IN BONEM

Aca unicamente estas llamando estos campos BOTEXT, DATAB, VKGRP, BONEM de la tabla KONA si lo debugeas ves que si llevan datos. Pero este Query,

SELECT BONUS
INTO KOTE902-BONUS
FROM KOTE902
WHERE KNUMA EQ KONA-KNUMA.

el campo KNUMA de la tabla KONA siempre va estar vacio ya que en el Query anterior no lo estas mandando a traer.

Asi que si lo debugeas y colocas la tabla KONA veras que solo trae la informacion de los campos en el primer Query y los demas aunque en la tabla consultada en la SE11 hayan datos ahi no los muestra (dentro del debug) no estas llamando el campo KNUMA

1 me gusta

@alextremo Mira ahí lo organice pero no se si estoy llamando muchos datos pero son los que necesito

Hola,

No te hagas problema, estamos aquí para ayudar. Creo que primero debes plantearte cómo realizar el select.

para el mismo, tenes:

1 - A que tabla necesitás acceder (en este caso T6B2)
2 - Qué campos de esa tabla necesitás y en dónde vas a guardar el valor de esos campos
3 - Con qué campos (valores previamente obtenidos, ya sea pantalla u otra tabla) podés acceder.

Es decir, si en el WHERE tienes KONA-KAPPL, no tiene sentido poner INTO KONA-KAPPL,

Por otro lado, en la pantalla que muestras tienes datos, pero sigue debugueando a ver si llegas a la tabla interna con la cual llamas al ALV.

Saludos.

1 me gusta

@alextremo, por favor, recuerda que el texto que está dentro de las imágenes no se puede encontrar (los buscadores no pueden buscar en la imagen), y también es difícil de aprender de capturas (no podemos copiar esos códigos). :pray: Por favor, edita tu mensaje, y pon los bloques de código como texto. Si es muy largo, puedes usar el repositorio de github.

Saludos!

Si @sconoredhot eso hago realizo un debuuggin pero vi que ya me arroja algunos datos pero no me los muestra en el programa no se que estará pasando

No entiendo, “ya me arroja algunos datos” pero en la imagen no veo nada data.

Aclaro que en el programa no me muestra y en el debuggin si

realiza el debug viendo la tabla LT_INTERNA donde le vas asignado datos y cuando hace el Apend que los datos queden en la tabla, y luego ve recorriendo hasta llegar al ALV y verifica que aun este llena, si en algun perform lo pierde la información ve que es lo que esta pasando el por que los pierde…

1 me gusta