26 сентября 2018

Popup окно с выбором значения в виде таблицы ALV

Есть два (а может и больше) ФМа SRM_SELECTION_POPUP_WITH_ALV и REUSE_ALV_POPUP_TO_SELECT.

  DATA:
    lt_tab           TYPE TABLE OF rbkp_key,

    lv_selected_line TYPE i,
    lv_canceled      TYPE srmboolean,

    ls_selfield      TYPE slis_selfield,
    lv_exit.

  SELECT *
    FROM rbkp
    INTO CORRESPONDING FIELDS OF TABLE lt_tab
    WHERE bldat BETWEEN '20180901' AND '20181231'.

  CALL FUNCTION 'SRM_SELECTION_POPUP_WITH_ALV'
    EXPORTING
      im_title            = 'Title'
      im_tabname          = 'RBKP_KEY'
      im_startx           = 5
      im_stopx            = 100
      im_starty           = 1
      im_stopy            = 10
    IMPORTING
      ex_selected_line    = lv_selected_line
      ex_canceled_by_user = lv_canceled
    CHANGING
      lt_outtab           = lt_tab.

  " Or

  CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
    EXPORTING
      i_title                       = 'Это заголовок'
*     i_selection                   = 'X'
*     i_allow_no_selection          =
      i_zebra                       = 'X'
*     i_screen_start_column         = 0
*     i_screen_start_line           = 0
*     i_screen_end_column           = 0
*     i_screen_end_line             = 0
*     i_checkbox_fieldname          =
*     i_linemark_fieldname          =
*     i_scroll_to_sel_line          = 'X'
      i_tabname                     = '1'
      i_structure_name              = 'RBKP_KEY'
*     it_fieldcat                   =
*     it_excluding                  =
*     i_callback_program            =
*     i_callback_user_command       =
*     is_private                    =
    IMPORTING
      es_selfield                   = ls_selfield
      e_exit                        = lv_exit
    TABLES
      t_outtab                      = lt_tab
    EXCEPTIONS
      program_error                 = 1
      OTHERS                        = 2.

25 сентября 2018

Добавить ZZ-поле в отчет FBL1N

1. Добавить поле в структуры RFPOS (RFPOSX) через append-структуру.
2. Запустить программу RFPOSXEXTEND, чтобы сгенерировать необходимые структуры.
3. Для заполнения поля использовать BTE 00001650 "LINE ITEM DISPLAY: Add to Data per Line" (P/S Module) или BAdI "FI_ITEMS_CH_DATA".