Поиск…


Создание и отображение ALV

В этом примере cl_salv_table наиболее простое создание ALV с использованием класса cl_salv_table и дополнительных параметров форматирования. Дополнительные опции форматирования будут включены после блока TRY ENDTRY и перед alv->display( ) метода alv->display( ) .

Все последующие примеры с использованием подхода ABAP Objects к созданию ALV будут использовать этот пример в качестве отправной точки.

DATA: t_spfli       TYPE STANDARD TABLE OF spfli,
      alv           TYPE REF TO cl_salv_table,
      error_message TYPE REF TO cx_salv_msg.

" Fill the internal table with example data
SELECT * FROM spfli INTO TABLE t_spfli.

" Fill ALV object with data from the internal table
TRY.
    cl_salv_table=>factory(
      IMPORTING
        r_salv_table = alv
      CHANGING
        t_table      = t_spfli ).
  CATCH cx_salv_msg INTO error_message.
    " error handling
ENDTRY.

" Use the ALV object's display method to show the ALV on the screen
alv->display( ).

Оптимизировать ширину столбца ALV

В этом примере показано, как оптимизировать ширину столбца, чтобы заголовки столбцов и данные не прерывались.

alv->get_columns( )->set_optimize( ).

Скрыть столбцы в ALV

В этом примере скрывается поле MANDT (клиент) из ALV. Обратите внимание, что параметр, переданный в get_column( ) должен быть капитализирован, чтобы это работало.

alv->get_columns( )->get_column( 'MANDT' )->set_visible( if_salv_c_bool_sap=>false ).

Переименование заголовков столбцов в ALV

Текст столбца может изменяться при горизонтальном изменении размера столбца. Для этого есть три способа:

Имя метода Максимальная длина заголовка
set_short_text 10
set_medium_text 20
set_long_text 40

В следующем примере показано использование всех трех. Объект column объявляется и создается как ссылка на результат alv->get_columns( )->get_column( 'DISTID' ) . Имя столбца должно быть заглавными буквами. Это значит, что эта цепочка методов вызывается только один раз в своем экземпляре, а не выполняется каждый раз при изменении заголовка столбца.

DATA column TYPE REF TO cl_salv_column.
column = alv->get_columns( )->get_column( 'DISTID' ).

column->set_short_text( 'Dist. Unit' ).
column->set_medium_text( 'Unit of Distance' ).
column->set_long_text( 'Mass Unit of Distance (kms, miles)' ).

Включить функциональность панели инструментов ALV

Следующий вызов метода позволяет использовать многие дополнительные функции, такие как сортировка, фильтрация и экспорт данных.

alv->get_functions( )->set_all( ).

Включение любой другой строки в ALV

Этот метод повышает удобочитаемость, предоставляя последовательные строки чередующихся оттенков фона.

alv->get_display_settings( )->set_striped_pattern( if_salv_c_bool_sap=>true ).

Установка заголовка отображаемого ALV

По умолчанию, когда отображается ALV, заголовок вверху - это просто имя программы. Этот метод позволяет пользователю установить заголовок до 70 символов. В следующем примере показано, как можно настроить динамический заголовок, отображающий количество отображаемых записей.

alv->get_display_settings( )->set_list_header( |Flight Schedule - { lines( t_spfli ) } records| ).


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow