Текущее время: Ср, сен 19 2018, 03:38

Часовой пояс: UTC + 4 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 12:38 
Ассистент
Ассистент

Зарегистрирован:
Вт, мар 20 2018, 12:16
Сообщения: 26
Добрый день!
Необходимо чтоб при двойном клике, снизу появлялась доп. информация. Второй экран выводится новым окном, пробовал создать экран, он так же выводился не поверх, а новым окном. Необходимо чтоб вызывался экран с закладкамию
Code:
*обработка двойного клика*
METHOD on_double_click.
    clear ls_result_tab.
    read table lt_result_tab index row into ls_result_tab.
    perform display_alv_detail.
  ENDMETHOD.   

clear ls_lna_reqempl.
clear lt_lna_details.

loop at lt_lna_reqempl_res into ls_lna_reqempl_res
  where reqid = ls_result_tab-reqid.
append ls_lna_reqempl_res to lt_lna_details.
endloop.

DATA:
    lo_table      TYPE REF TO cl_salv_table,
    lo_events     TYPE REF TO cl_salv_events_table,
    lo_columns    TYPE REF TO cl_salv_columns_table,
    lo_column     TYPE REF TO cl_salv_column_list.
TRY.
      CALL METHOD cl_salv_table=>factory
        IMPORTING
          r_salv_table = lo_table
        CHANGING
          t_table      = lt_lna_details.
      lo_table->display( ).
endtry.
  endform.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 13:27 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 06 2017, 00:56
Сообщения: 334
Вариант 1: второй экран создать как подэкран
Вариант 2: оставить всего 1 экран, и сделать два контейнера алв на одном экране.

я бы пошел по варианту 2.

создал два алв на одном экране, и первый алв управляет наполнением и параметром видимости второго алв


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 14:20 
Ассистент
Ассистент

Зарегистрирован:
Вт, мар 20 2018, 12:16
Сообщения: 26
Kuranov.Dmitry написал(а):
Вариант 1: второй экран создать как подэкран
Вариант 2: оставить всего 1 экран, и сделать два контейнера алв на одном экране.

я бы пошел по варианту 2.

создал два алв на одном экране, и первый алв управляет наполнением и параметром видимости второго алв


Необходима чтоб первая таблица была видна в полный экран. А второй появлялся только по клику и закрывался по кнопке, со множеством подэкранов на нем. С двумя контейнерами такое же не будет реализовано?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 14:47 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Ср, сен 06 2017, 00:56
Сообщения: 334
Ну можно тогда вроде как модальное окно замутить. Не очень понятно как вы видите интерфейс, если таблица на весь экран, то как вы снизу подрисуете еще одну?
Или вы хотите, чтоб при дабл клике она поджималасбь оставляя место?

как вариант, сделать второй экран, и делать CALL SCREEN 0200 STARTING AT 10 10.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 14:54 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 17:25
Сообщения: 2974
Пол: Мужской
exotik написал(а):
Kuranov.Dmitry написал(а):
Вариант 1: второй экран создать как подэкран
Вариант 2: оставить всего 1 экран, и сделать два контейнера алв на одном экране.

я бы пошел по варианту 2.

создал два алв на одном экране, и первый алв управляет наполнением и параметром видимости второго алв


Необходима чтоб первая таблица была видна в полный экран. А второй появлялся только по клику и закрывался по кнопке, со множеством подэкранов на нем. С двумя контейнерами такое же не будет реализовано?

Воспользуйтесь поиском, это решаемо ALV + SPLITTER CONTROL


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 15:07 
Ассистент
Ассистент

Зарегистрирован:
Вт, мар 20 2018, 12:16
Сообщения: 26
Kuranov.Dmitry написал(а):
Ну можно тогда вроде как модальное окно замутить. Не очень понятно как вы видите интерфейс, если таблица на весь экран, то как вы снизу подрисуете еще одну?
Или вы хотите, чтоб при дабл клике она поджималасбь оставляя место?

как вариант, сделать второй экран, и делать CALL SCREEN 0200 STARTING AT 10 10.



что бы при дабл клике поджималсь, именно так


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 15:38 
Ассистент
Ассистент

Зарегистрирован:
Пт, фев 01 2013, 11:27
Сообщения: 28
Если надо просто 2 alv и разделитель. То делим исходный контейнер на 2 с помощью cl_gui_splitter_container и в дочерних контейнерах создаём нужные ALV, управляем разделителем с помощью cl_gui_splitter_container->set_row_high( ).
Если надо именно 2 экрана и разделитель. То добавляем на основной экран "Элемент управления Разделитель", в него добавляем подэкраны. Далее управляем разделителем с помощью cl_dynpro_splitter->set_sash( )


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пт, июн 01 2018, 16:39 
Специалист
Специалист

Зарегистрирован:
Пн, дек 29 2008, 08:19
Сообщения: 124
Пол: Мужской
вывод ФМ

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
....
i_screen_start_column = 10
i_screen_start_line = 4
i_screen_end_column = 90
i_screen_end_line = 30
TABLES
t_outtab = table
EXCEPTIONS
program_error = 1
OTHERS = 2.

и размер указывайте какой надо и поверх всех окон... ))))


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Два ALV на экране
СообщениеДобавлено: Пн, июн 04 2018, 10:43 
Специалист
Специалист

Зарегистрирован:
Чт, мар 25 2010, 10:02
Сообщения: 207
Есть еще CL_GUI_DOCKING_CONTAINER - можно программно цеплять и отцеплять к краям экрана плавающий контейнер. Если вам надо чтобы во втором окне был именно стандартный экран абап - то выводите грид в докинг контейнер полностью перекрывающий экран и когда надо - сжимайте докинг контейнер чтобы под ним проявился стандартный экран.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB