¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Como usar o parâmetro I_callback_pf_status_set em REUSE_ALV_LIST_DISPLAY: Exemplo simples e explicação detalhada.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

Quero usar o parâmetro I_callback_pf_status_set no REUSE_ALV_LIST_DISPLAY. Como posso usá-lo? Alguém pode me dar um exemplo simples?

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Olá,

Dê uma olhada no seguinte

TYPE-POOLS: SLIS.

TYPES: BEGIN OF I_MARA,

MATNR LIKE MARA-MATNR,

MTART LIKE MARA-MTART,

MEINS LIKE MARA-MEINS,

GROES LIKE MARA-GROES,

VOLUM LIKE MARA-VOLUM,

END OF I_MARA.

DATA: IT_MARA TYPE STANDARD TABLE OF I_MARA INITIAL SIZE 0.

DATA: FLDCAT TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,

REPID TYPE SY-REPID,

GD_LAYOUT TYPE SLIS_LAYOUT_ALV.

START-OF-SELECTION.

PERFORM DATA_RETRIEVAL.

PERFORM BLD_FLDCAT.

PERFORM BLD_LAYOUT.

PERFORM DISPLAY_ALV_REPORT.

FORM BLD_FLDCAT.

FLDCAT-FIELDNAME = 'MATNR'.

FLDCAT-SELTEXT_M = 'NÚMERO DE MATERIAL'.

FLDCAT-COL_POS = 0.

FLDCAT-KEY = 'X'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'MTART'.

FLDCAT-SELTEXT_M = 'TIPO DE MATERIAL'.

FLDCAT-COL_POS = 1.

FLDCAT-KEY = 'X'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'MEINS'.

FLDCAT-SELTEXT_M = 'UNIDADE DE MEDIDA'.

FLDCAT-COL_POS = 2.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'GROES'.

FLDCAT-SELTEXT_M = 'TAMANHO'.

FLDCAT-COL_POS = 3.

FLDCAT-KEY = 'X'.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

FLDCAT-FIELDNAME = 'VOLUM'.

FLDCAT-SELTEXT_M = 'VOLUME'.

FLDCAT-COL_POS = 4.

APPEND FLDCAT TO FLDCAT.

CLEAR FLDCAT.

ENDFORM.

FORM BLD_LAYOUT.

GD_LAYOUT-NO_INPUT = 'X'.

GD_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.

GD_LAYOUT-ZEBRA = 'X'.

GD_LAYOUT-WINDOW_TITLEBAR = 'EXIBIÇÃO DE GRADE'.

ENDFORM.

FORM DISPLAY_ALV_REPORT.

REPID = SY-REPID.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = REPID

I_CALLBACK_PF_STATUS_SET = 'PADRÃO'

I_CALLBACK_USER_COMMAND = 'COMANDO_DO_USUÁRIO'

I_CALLBACK_TOP_OF_PAGE = 'TOPO_DA_PÁGINA'

IS_LAYOUT = GD_LAYOUT

IT_FIELDCAT = FLDCAT[]

I_SAVE = 'X'

TABLES

T_OUTTAB = IT_MARA

  • EXCEÇÕES

  • ERRO_DE_PROGRAMA = 1

  • OUTROS = 2

.

SE SY-SUBRC <> 0.

  • MENSAGEM ID SY-MSGID TIPO SY-MSGTY NÚMERO SY-MSGNO

  • COM SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

FIMSE.

ENDFORM.

FORM DATA_RETRIEVAL.

SELECIONE MATNR MTART MEINS GROES VOLUM

INTO TABLE IT_MARA DE MARA

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Suresh,

Os eventos podem ser passados para ALV Fm de duas maneiras. Seja diretamente ou construindo uma tabela interna para eventos. Em ambos os casos, precisamos declarar uma rotina para os eventos. Nesse evento, declare set pf-status 'XXX'. Prepare isso no pintor.

Saudações,

Kumar.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Experimente este código:

*&---------------------------------------------------------------------*
        *&      Form  ALV_REPORT_DISPLAY_LIST
        *&---------------------------------------------------------------------*
        * Função para exibir os dados finais da tabela interna na grade ALV
        *----------------------------------------------------------------------*
        *  -->  i_OUTTAB    (Tabela interna final)
        *----------------------------------------------------------------------*
        form alv_report_display_list  using i_outtab type standard table.

        * Função para exibir a lista ALV usando a tabela interna de saída final
        call function 'REUSE_ALV_LIST_DISPLAY'
        exporting
        i_callback_program       = sy-repid
        i_callback_pf_status_set = 'ZSTATUS'
        i_callback_user_command  = gv_usr_cmd
        is_layout                = gs_layout
        it_fieldcat              = gt_fieldcat
        it_excluding             = gt_excl
        it_special_groups        = gt_spl_grps
        it_sort                  = gt_sort
        it_filter                = gt_filter
        i_default                = 'X'
        i_save                   = 'U'
        is_variant               = gs_variant
        it_events                = gt_events
        it_event_exit            = gt_event_exit
        is_print                 = gs_print
        tables
        t_outtab                 = i_outtab
        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.                    " alv_report_display_list

        *&---------------------------------------------------------------------*
        *&      Form  zstatus
        *&---------------------------------------------------------------------*
        *      Definir PF
        *----------------------------------------------------------------------*

        form zstatus using extab type slis_t_extab.                 "#EC CALLED
        set pf-status 'ZSTAT'.
        refresh extab[].
        endform.                    " zstatus
Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?