Текущее время: Вс, июл 27 2025, 16:40

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Отрисовка таблицы ALV
СообщениеДобавлено: Ср, фев 11 2015, 12:05 
Начинающий
Начинающий

Зарегистрирован:
Пт, янв 23 2015, 11:57
Сообщения: 20
Пол: Мужской
Добрый день!
В моей программе из селекционного экрана попадаем на экран 100 с alv grid'ом. Далее по нажатию клавиши переходим на 200 экран.
Сделав нужные операции на 200 экране, возвращаемся станд. саповскими кнопками на 100.
Проблема в следующем: при переходе от 200 к 100 экрану меняется TITLE200 на TITLE100, но внутренность остается от 200 экрана.
Если нажать пару раз на BACK, то выходит в селекционный экран.

Подскажите, пожалуйста, в чем может быть дело.

Code:
CLASS lcl_event_receiver IMPLEMENTATION.
method handle_user_command.
    case e_ucomm.
        "...
        when 'EDIT_PFS'.
              call screen 200.
    endcase.
endmethod.
ENDCLASS.

Code:
MODULE PAI_0200 INPUT.
  ok_code = sy-ucomm.
  case ok_code.
    when 'BACK'.
        "SET SCREEN 100. LEAVE SCREEN.
        leave to screen 100.
    when 'EXIT'.
        "SET SCREEN 100. LEAVE SCREEN.
        leave to screen 100.
  endcase.
  clear ok_code.
ENDMODULE.                 " PAI_0200  INPUT


Code:
MODULE PBO100 OUTPUT.
  set pf-status 'STATUS100'.
  set titlebar 'TITLE100'.
  g_repid = sy-repid.
  perform build_fieldcat changing gt_fieldcat.
  perform exclude_tb_functions changing lt_exclude.
  if g_custom_container is initial.
    perform create_and_init_alv changing gt_outtab[]
                                         gt_fieldcat.
  else.
"бла бла
  endif.
ENDMODULE.                " PBO100  OUTPUT


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отрисовка таблицы ALV  Тема решена
СообщениеДобавлено: Ср, фев 11 2015, 12:59 
Почетный гуру
Почетный гуру

Зарегистрирован:
Пт, дек 04 2009, 12:52
Сообщения: 219
Посмотрите, как подобное реализовано в отчете BCALV_GRID_08 .

P.S. Прошу прощения за оффтоп, но используйте 'REUSE_ALV_GRID_DISPLAY' или 'REUSE_ALV_GRID_DISPLAY_LVC' и избавите себя от хождения по подобным "граблям", а других - от кучи ненужного кода.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Отрисовка таблицы ALV
СообщениеДобавлено: Ср, фев 11 2015, 14:58 
Начинающий
Начинающий

Зарегистрирован:
Пт, янв 23 2015, 11:57
Сообщения: 20
Пол: Мужской
Игорь, спасибо.
Но в примере на все кнопки навесили EXIT, а мне именно переход к предыдущему экрану нужен.

Совет учту, буду разбираться.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отрисовка таблицы ALV
СообщениеДобавлено: Ср, фев 11 2015, 15:12 
Почетный гуру
Почетный гуру

Зарегистрирован:
Пт, дек 04 2009, 12:52
Сообщения: 219
desconocida, в данном примере, крайняя справа кнопка (в панели инструментов грида) как раз и вызывает переключение между экранами 100 и 200 (на каждом из которых расположен свой грид).


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Отрисовка таблицы ALV
СообщениеДобавлено: Чт, фев 12 2015, 06:24 
Начинающий
Начинающий

Зарегистрирован:
Пт, янв 23 2015, 11:57
Сообщения: 20
Пол: Мужской
Code:
  MODULE pai_200 INPUT.

  CASE ok_code.
    WHEN 'EXIT'.
      PERFORM exit_program.

  ENDCASE.
  CLEAR ok_code.
ENDMODULE.                             " PAI_200  INPUT

Вот как тут обрабатываются кнопки EXIT и BACK: с 200 экрана сразу выход из программы, поэтому в решении моей проблемы пример не помог.
Code:
* go to other table
    CASE e_ucomm.
      WHEN 'TO_SPFLI'.
        LEAVE TO SCREEN 100.
      WHEN 'TO_SFLIGHT'.
        PERFORM load_sflight_table TABLES lt_rows.
        CALL SCREEN 200.

    ENDCASE.

Такой способ у меня не работает. У меня же не получается возврат к предыдущей Grid, хотя заголовок меняется. Смотрите код выше.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Отрисовка таблицы ALV
СообщениеДобавлено: Чт, фев 12 2015, 07:29 
Начинающий
Начинающий

Зарегистрирован:
Пт, янв 23 2015, 11:57
Сообщения: 20
Пол: Мужской
Дело было в том, что я все время вызывала для одного контейнера
Code:
  create object g_custom_container
         exporting container_name = g_container_200.

Вместо g_custom_container_200.

Тема закрыта.


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

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


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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