Ранее мы создали всплывающее окно: Раз, Два, Три. Скорее всего, нам потребуется передать в него какую-то информацию из исходного окна.
Делается это довольно просто. Сначала создадим сущность с данными, после передадим ее в метод OPEN
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
METHOD eh_onnexus. DATA : lo_collection TYPE REF TO if_bol_bo_col. DATA : lo_transfer TYPE REF TO if_bol_bo_property_access, ls_transfer TYPE REF TO Z_POPUP_TRANSFER_DATA. CREATE DATA ls_transfer. ls_transfer->field1 = 'Поле1'. ls_transfer->field2 = 'Поле2'. CREATE OBJECT lo_transfer TYPE cl_bsp_wd_value_node EXPORTING iv_data_ref = ls_transfer. CREATE OBJECT lo_collection TYPE cl_crm_bol_bo_col. lo_collection->add( lo_transfer ). ..... go_popup_send->open( iv_inbound_plug = 'DATA_RETRIEVAL' iv_collection = lo_collection ). ENDMETHOD. |
Зайдем в компонент всплывающего окна и создадим входной Plug.
Добавим код в метод.
1 2 3 4 5 6 7 8 9 10 11 |
METHOD ip_data_retrieval. DATA: lo_entity TYPE REF TO if_bol_bo_property_access, ls_transfer TYPE z_popup_transfer_data. lo_entity = iv_collection->get_first( ). lo_entity->get_properties( IMPORTING es_attributes = ls_transfer ). ENDMETHOD. |
В результате в структуре ls_transfer получим данные из исходного окна. Используем их по своему усмотрению.