Anuncio

Colapsar
No hay anuncio todavía.

No muestra barra de herramientas en ALV Grid - ¿falta algo?

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • No muestra barra de herramientas en ALV Grid - ¿falta algo?

    Sres, buenos dias, tengo el siguiente codigo de un alv grid que no muestra la barra de herramientas, no encuentro el error, favor de revisar y hecharme una mano, mil gracias.

    Código:
    REPORT  z_alv_to_excel MESSAGE-ID z0
                           NO STANDARD PAGE HEADING
                           LINE-SIZE 132
                           LINE-COUNT 65.
    
    TABLES: spfli.
    
    DATA: W_USRID  LIKE PA0105-USRID,
          W_POSI(2) TYPE N,
          W_SETT01(56) TYPE C,
          W_TIPBUS TYPE C.
    
    DATA: W_PROGNAME    TYPE SY-REPID,
          W_DYNNUM      TYPE SY-DYNNR,
          DYNPRO_VALUES TYPE TABLE OF DYNPREAD,
          FIELD_VALUE   LIKE LINE OF DYNPRO_VALUES.
    
    TYPE-POOLS: SLIS.
    
    
    *&---------------------------------------------------------------------*
    *& Estructuras
    *&---------------------------------------------------------------------*
    TYPES: BEGIN OF type_spfli,
      carrid    TYPE spfli-carrid,    "Denominación breve de la compañía aérea
      connid    TYPE spfli-connid,    "Código de conexión de vuelo directo
      countryfr	TYPE spfli-countryfr, "Clave de país
      cityfrom  TYPE spfli-cityfrom, "Ciudad de salida
      airpfrom  TYPE spfli-airpfrom,  "Aeropuerto de salida
      countryto	TYPE spfli-countryto, "Clave de país
      cityto    TYPE spfli-cityto,    "Ciudad de llegada
      airpto    TYPE spfli-airpto,    "Aeropuerto de destino
    END OF type_spfli.
    
    TYPES: type_t_spfli TYPE STANDARD TABLE OF type_spfli.
    DATA: ti_spfli TYPE type_t_spfli.
    TYPE-POOLS: slis.
    
    DATA: gt_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
          gs_layout            TYPE slis_layout_alv,
          gt_list_top_of_page  TYPE slis_t_listheader,
          gt_events            TYPE slis_t_event,
          gt_sort              TYPE slis_t_sortinfo_alv WITH HEADER LINE,
          ls_vari              TYPE disvariant,
          g_repid        LIKE sy-repid.
    
    DATA:  GT_EXCLUDE TYPE SLIS_T_EXTAB WITH HEADER LINE.
    
    SELECTION-SCREEN BEGIN OF BLOCK BLOCK01 WITH FRAME TITLE TEXT-S03.
      PARAMETERS: P_file TYPE rlgrap-filename DEFAULT 'c:\sapdata\'.
    SELECTION-SCREEN END OF BLOCK BLOCK01.
    
    *&---------------------------------------------------------------------*
    *& Validaciones de Pantalla
    *&---------------------------------------------------------------------*
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
      PERFORM BUSCAR_ARCHIVO CHANGING P_FILE.
    
    FORM BUSCAR_ARCHIVO CHANGING P_FILE.
    
      DATA: XFILE LIKE  IBIPPARMS-PATH.
    
    
      CALL FUNCTION 'F4_FILENAME'
    *    EXPORTING
    *      FIELD_NAME          = p_file
        IMPORTING
          FILE_NAME           = XFILE.
    
      P_FILE = XFILE.
    
    ENDFORM.                    " buscar_archivo
    
    *&---------------------------------------------------------------------*
    *& INITIALIZATION
    *&---------------------------------------------------------------------*
    INITIALIZATION.
    * nombre del Programa
      MOVE sy-repid TO g_repid.
    
    *&---------------------------------------------------------------------*
    *& START-OF-SELECTION
    *&---------------------------------------------------------------------*
    START-OF-SELECTION.
    ** Obtencion de los Datos
      PERFORM carga_datos CHANGING ti_spfli.
    ** Lisatado de los datos
      PERFORM cargar_alv.
    *&---------------------------------------------------------------------*
    END-OF-SELECTION.
    
    *&---------------------------------------------------------------------*
    *&      Form  CARGA_CAB_GASTOS
    *&---------------------------------------------------------------------*
    FORM carga_datos CHANGING to_spfli TYPE type_t_spfli.
    
      REFRESH: to_spfli.
    
      SELECT   carrid
               connid
               countryfr
               cityfrom
               airpfrom
               countryto
               cityto
               airpto
        INTO CORRESPONDING FIELDS OF TABLE to_spfli
        FROM spfli.
    
    ENDFORM.                    " CARGA_DATOS
    *&---------------------------------------------------------------------*
    *&      Form  CARGAR_ALV
    *&---------------------------------------------------------------------*
    FORM cargar_alv.
    
      PERFORM init_fieldcat.
      PERFORM init_layout.
    
      PERFORM EVENTTAB_BUILD_01 CHANGING GT_EVENTS.
      PERFORM COMMENT_BUILD_01 USING GT_LIST_TOP_OF_PAGE.
    
      PERFORM mostrar_alv_01 USING ti_spfli.
    
    ENDFORM.                    " CARGAR_ALV
    *&---------------------------------------------------------------------*
    *&      Form  init_fieldcat
    *&---------------------------------------------------------------------*
    FORM init_fieldcat.
    
      REFRESH: gt_fieldcat.
      CLEAR w_posi.
    
      G_REPID = SY-REPID.
    
      W_POSI = W_POSI + 1.
      gt_fieldcat-tabname       = 'IT_SPFLI'.
      gt_fieldcat-fieldname     = 'CARRID'.
      gt_fieldcat-ref_tabname   = 'SPFLI'.
      gt_fieldcat-ddictxt       = 'L'.
      GT_FIELDCAT-COL_POS       = W_POSI.
      APPEND gt_fieldcat. CLEAR gt_fieldcat.
    
      W_POSI = W_POSI + 1.
      gt_fieldcat-tabname       = 'IT_SPFLI'.
      gt_fieldcat-fieldname     = 'CONNID'.
      gt_fieldcat-ref_tabname   = 'SPFLI'.
      gt_fieldcat-ddictxt       = 'L'.
      GT_FIELDCAT-COL_POS       = W_POSI.
      APPEND gt_fieldcat. CLEAR gt_fieldcat.
    
      W_POSI = W_POSI + 1.
      gt_fieldcat-tabname       = 'IT_SPFLI'.
      gt_fieldcat-fieldname     = 'COUNTRYFR'.
      gt_fieldcat-ref_tabname   = 'SPFLI'.
      gt_fieldcat-ddictxt       = 'L'.
      GT_FIELDCAT-COL_POS       = W_POSI.
      APPEND gt_fieldcat. CLEAR gt_fieldcat.
    
      W_POSI = W_POSI + 1.
      gt_fieldcat-tabname       = 'IT_SPFLI'.
      gt_fieldcat-fieldname     = 'CITYFROM'.
      gt_fieldcat-ref_tabname   = 'SPFLI'.
      gt_fieldcat-ddictxt       = 'L'.
      GT_FIELDCAT-COL_POS       = W_POSI.
      APPEND gt_fieldcat. CLEAR gt_fieldcat.
    
    ENDFORM.                    " init_fieldcat
    
    *&---------------------------------------------------------------------*
    *&      Form  init_layout
    *&---------------------------------------------------------------------*
    FORM init_layout.
      gs_layout-colwidth_optimize = 'X'.
      gs_layout-zebra             = 'X'.
      GS_LAYOUT-NO_INPUT          = ' '.
    ENDFORM.                    " init_layout
    
    FORM user_command_01 USING ucomm    LIKE sy-ucomm
                            selfield TYPE slis_selfield.
    
      DATA: wl_file TYPE string.
    
      CASE ucomm.
        WHEN '&EXC'.
    *      PERFORM get_filename  CHANGING wl_file.
    *      PERFORM download_to_exc  USING wl_file ti_spfli.
      ENDCASE.
    ENDFORM.
    
    FORM EVENTTAB_BUILD_01 CHANGING PGT_EVENTS TYPE SLIS_T_EVENT.
    
      CONSTANTS:
      GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE_01'.
    
      DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
    
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          I_LIST_TYPE = 0
        IMPORTING
          ET_EVENTS   = PGT_EVENTS.
    
      READ TABLE PGT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
                 INTO LS_EVENT.
    
      IF SY-SUBRC = 0.
        MOVE GC_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO PGT_EVENTS.
      ENDIF.
    
    ENDFORM.
    
    FORM COMMENT_BUILD_01 USING LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
    
      DATA: LS_LINE TYPE SLIS_LISTHEADER.
    
      REFRESH: LT_TOP_OF_PAGE.
    
    * Title
    * LIST HEADING LINE: TYPE H
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-KEY  = 'REPORTE'.
      LS_LINE-INFO = 'DETALLES'.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
    
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'S'.
      LS_LINE-KEY  = 'Autor:'.
      CONCATENATE '***xx' '******' INTO LS_LINE-INFO
      SEPARATED BY SPACE.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
    
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'S'.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
    
    ENDFORM.                    "COMMENT_BUILD_01
    
    *---------------------------------------------------------------------*
    *       FORM TOP_OF_PAGE_01                                           *
    *---------------------------------------------------------------------*
    FORM TOP_OF_PAGE_01.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
    ENDFORM.
    
    *&---------------------------------------------------------------------*
    *&      Form  MOSTRAR_ALV_01
    *&---------------------------------------------------------------------*
    FORM mostrar_alv_01 USING ti_spfli TYPE type_t_spfli.
    
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
         EXPORTING
            i_callback_program             = g_repid
            i_callback_user_command        = 'USER_COMMAND_01'
            i_callback_pf_status_set       = 'SET_PF_STATUS_01'
            i_structure_name               = 'T_OUTTAB'
            is_layout                      = gs_layout
            it_fieldcat                    = gt_fieldcat[]
    *        it_sort                        = gt_sort[]
            it_excluding                   = gt_exclude[]
    *        I_DEFAULT                      = 'X'
            i_save                         = ' '           "Grabar Variante
             is_variant                     = ls_vari
             it_events                      = gt_events[]
    *        IT_EVENT_EXIT                  =
    *        IS_PRINT                       =
    *        IS_REPREP_ID                   =
    *        I_SCREEN_START_COLUMN          = 0
    *        I_SCREEN_START_LINE            = 0
    *        I_SCREEN_END_COLUMN            = 0
    *        I_SCREEN_END_LINE              = 0
    *     IMPORTING
    *        E_EXIT_CAUSED_BY_CALLER        =
    *        ES_EXIT_CAUSED_BY_USER         =
         TABLES
            t_outtab                       = ti_spfli
         EXCEPTIONS
            program_error                  = 1
            OTHERS                         = 2.
    
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    
    ENDFORM.                    " MOSTRAR_ALV_01
    
    
    FORM set_pf_status_01 USING lt_cua_exclude TYPE slis_t_extab.
      DATA: lf_gui_status  TYPE gui_status.
    
      SET PF-STATUS 'ZZSTANDARD'.
    
    ENDFORM.                    "set_pf_status_01
Trabajando...
X