miércoles, 20 de noviembre de 2013

ALV Report de una tabla interna

Para poder mostrar un ALV Report de una tabla interna se necesitará como mínimo una tabla interna llamada it_fieldcat. En dicha tabla interna. se indicarán los nombres de los campos de nuestra tabla interna y una descripción del campo para mostrar en el título de la columna.

En este ejemplo se van a mostrar los cuatro primeros campos de la tabla SFLIGHT:

REPORT  z_sflight.

* Cargar la tabla SFLIGHT de la base de datos
TABLES: sflight.

* Cargamos los datos tipo slis
TYPES: slis.

* Definición de variables
DATA: g_it_sflight TYPE TABLE OF sflight,
      g_st_sflight TYPE sflight.

DATA: g_it_fieldcat TYPE slis_t_fieldcat_alv,
      g_st_fieldcat TYPE slis_fieldcat_alv.

* SQL para copiar la tabla sflight a la tabla interna
SELECT * FROM sflight INTO TABLE g_it_sflight.

* Datos del fieldcat para el ALV
g_st_fieldcat-fieldname = 'CARRID'. "Nombre del campo de la tabla
g_st_fieldcat-seltext_m = 'Compañía'. "Descripción media
g_st_fieldcat-seltext_s = 'Comp.'. "Descripción corta
APPEND g_st_fieldcat TO g_it_fieldcat.

g_st_fieldcat-fieldname = 'CONNID'.
g_st_fieldcat-seltext_m = 'Nº vuelo'.
g_st_fieldcat-seltext_s = 'Vuelo'.
APPEND g_st_fieldcat TO g_it_fieldcat.

g_st_fieldcat-fieldname = 'FLDATE'.
g_st_fieldcat-seltext_m = 'Fecha de vuelo'.
g_st_fieldcat-seltext_s = 'Fecha'.
APPEND g_st_fieldcat TO g_it_fieldcat.

g_st_fieldcat-fieldname = 'PRICE'.
g_st_fieldcat-seltext_m = 'Tarifa de vuelo'.
g_st_fieldcat-seltext_s = 'Tarifa'.
APPEND g_st_fieldcat TO g_it_fieldcat.

* Función ALV
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    it_fieldcat   = g_it_fieldcat[]
  TABLES
    t_outtab      = g_it_sflight[]
  EXCEPTIONS
    program_error = 1
    OTHERS        = 2.

ALV Report de los cuatro primeros campos de la tabla SFLIGHT.
En este ejemplo,  se ha introducido una descripción mediana y corta. Si se cambia el tamaño de la columna del ALV, también lo hará el nombre de la columna.

Related Posts:

  • Añadir patrón de rayas y tamaño de columna optimizado en un ALV Report (IS_LAYOUT)Si se desea mostrar el patrón rayado y tener el ancho de columna optimizado, se tiene que recurrir a la variable IS_LAYOUT del ALV. En este caso para activar dichas opciones, sólo hay que cambiar el valor de dos variables con… Read More
  • ALV Report de una base de datos (I_STRUCTURE_NAME)Cuando consultamos una base de datos, es posible que las descripciones de los campos hayan sido añadidas en los elementos de datos de cada campo, por tanto no será necesario rellenar el FIELDCAT como en el primer ejemplo ALV.… Read More
  • Añadir un botón en un ALV ReportEn la transacción SE80, visualizamos el programa SAPLKKBL. Visualizamos el programa SAPLKKBL. Navegamos en el árbol hasta la pestaña GUI Status>STANDARD. Pinchamos con el botón derecho y lo copiamos a nuestro program… Read More
  • Top of page en un ALV Report con imagenPara crear un encabezado a nuestro ALV Report con REUSE_ALV_GRID_DISPLAY, se necesitará crear un FORM y nombrarle en i_callback_top_of_page. Dentro del FORM, se incluirá la función REUSE_ALV_COMMENTARY_WRITE&nb… Read More
  • ALV Report de una tabla internaPara poder mostrar un ALV Report de una tabla interna se necesitará como mínimo una tabla interna llamada it_fieldcat. En dicha tabla interna. se indicarán los nombres de los campos de nuestra tabla interna y una descripción … Read More

5 comentarios :


  1. Tendrás algún ejemplo con la unión de dos tablas SAP. Un caso sería la unión de las tablas SAP MM marc Y makt para obtener, desde el punto de pedido MINBE la denominación del producto unido por el código de artículo.

    Te anticipo las gracias !!!

    Muy buen BLOG!!! Aprendemos todos gracias a personas como tú!!!

    ResponderEliminar
  2. Buenas, alguien información por favor de FOR ALL ENTRIES (para todas las entradas)

    ResponderEliminar