Columnas de Alv

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • alamo_blanco
    Member
    • jul
    • 101

    #1

    Columnas de Alv

    Hola a todos,

    Tengo que hacer un alv con una cabecera como la del archivo adjunto,
    como podria hacerlo, como tendria que rellenar el catalogo del alv?,

    Gracias.
    Un saludo.
    Archivos Adjuntos
  • angelitotunin
    Junior Member
    • feb
    • 6

    #2
    Prueba con esta plantilla

    TYPE-POOLS: slis.

    DATA: it_layout TYPE TABLE OF slis_layout_alv.
    DATA: i_alv_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
    DATA: i_alv_events TYPE TABLE OF slis_alv_event.
    DATA: d_repid LIKE sy-repid.
    DATA: wa_alv_event TYPE slis_alv_event.


    ************************************************** **********************
    *DEFINICIÓN DE LA ESTRUVTURA DE LA TABLA
    ************************************************** **********************


    TABLES: sbook.

    TYPES:
    BEGIN OF t_table,
    carrid TYPE s_carr_id,
    connid TYPE s_conn_id,
    fldate TYPE s_date,
    bookid LIKE sbook-customid,
    class LIKE sbook-class,
    smoker LIKE sbook-smoker,
    luggweight LIKE sbook-luggweight, "CANTIDAD
    wunit LIKE sbook-wunit, "MONEDA
    agencynum LIKE sbook-agencynum,
    END OF t_table.

    DATA: it_table TYPE TABLE OF t_table.
    DATA: wa_table TYPE t_table.

    ************************************************** **********************
    * LLENADO DE LA TABLA
    ************************************************** **********************


    SELECT-OPTIONS: s_reser FOR sbook-carrid.


    START-OF-SELECTION.

    SELECT carrid connid fldate bookid class smoker luggweight wunit
    agencynum
    FROM sbook
    INTO TABLE it_table
    WHERE carrid IN s_reser.


    ************************************************** **********************
    * CONFIGURACIÓN DE LAS COLUMNAS
    ************************************************** **********************

    * CAMPO 1:

    i_alv_fieldcat-row_pos = '1'.
    i_alv_fieldcat-col_pos = '1'.
    i_alv_fieldcat-tabname = 'IT_TABLE'.
    i_alv_fieldcat-fieldname = 'AGENCYNUM'.
    i_alv_fieldcat-ref_tabname = 'SBOOK'.
    i_alv_fieldcat-ref_fieldname = 'AGENCYNUM'.
    i_alv_fieldcat-seltext_l = 'X'.

    APPEND i_alv_fieldcat.
    CLEAR i_alv_fieldcat.


    * CAMPO 2:

    i_alv_fieldcat-row_pos = '1'.
    i_alv_fieldcat-col_pos = '2'.
    i_alv_fieldcat-tabname = 'IT_TABLE'.
    i_alv_fieldcat-fieldname = 'WUNIT'.
    i_alv_fieldcat-ref_tabname = 'SBOOK'.
    i_alv_fieldcat-ref_fieldname = 'WUNIT'.
    i_alv_fieldcat-seltext_l = 'X'.

    APPEND i_alv_fieldcat.
    CLEAR i_alv_fieldcat.


    * CAMPO 3:

    i_alv_fieldcat-row_pos = '1'.
    i_alv_fieldcat-col_pos = '3'.
    i_alv_fieldcat-tabname = 'IT_TABLE'.
    i_alv_fieldcat-fieldname = 'LUGGWEIGTH'.
    i_alv_fieldcat-ref_tabname = 'SBOOK'.
    i_alv_fieldcat-ref_fieldname = 'LUGGWEIGTH'.
    i_alv_fieldcat-seltext_l = 'X'.
    i_alv_fieldcat-qtabname = 'IT_AIRLINE'.
    i_alv_fieldcat-qfieldname = 'WUNIT'.

    APPEND i_alv_fieldcat.
    CLEAR i_alv_fieldcat.


    ************************************************** **********************
    * CABECERA DE PÁGINA
    ************************************************** **********************


    * CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    * EXPORTING
    * i_list_type = 0
    * IMPORTING
    * et_events = i_alv_events[]
    *
    * IF sy-subrc <> 0.
    *
    * ENDIF.
    * READ TABLE i_alv_events INTO wa_alv_event
    * WITH KEY name = 'TOP_OF_PAGE'.
    *
    * wa_alv_event-form = 'F_TOP_OF_PAGE'.
    * MODIFY i_alv_events FROM wa_alv_event INDEX sy-tabix.


    ************************************************** **********************
    * LLAMADA A FUNCIÓNES
    ************************************************** **********************

    d_repid = sy-repid.

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = d_repid
    it_fieldcat = i_alv_fieldcat[]
    it_events = i_alv_events[]
    TABLES
    t_outtab = it_table.

    Comentario

    • alamo_blanco
      Member
      • jul
      • 101

      #3
      Ok.
      muchas gracias!!

      Comentario

      Trabajando...