Текущее время: Пн, июл 28 2025, 00:49

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Нажатие ENTER на строке нередактируемого ALV GRID
СообщениеДобавлено: Ср, апр 11 2007, 12:29 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
Добрый день.
Подскажите, как поймать нажатие ENTER на выделенной строке таблицы?
Таблица только для чтения. В случае редактируемой таблицы без проблем ловится событие DATA_CHANGED. В моем случае не знаю как...
Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нажатие ENTER на строке нередактируемого ALV GRID
СообщениеДобавлено: Ср, апр 11 2007, 13:29 
Специалист
Специалист

Зарегистрирован:
Пт, июн 16 2006, 11:39
Сообщения: 178
Откуда: Москва
author написал(а):
Добрый день.
Подскажите, как поймать нажатие ENTER на выделенной строке таблицы?
Таблица только для чтения. В случае редактируемой таблицы без проблем ловится событие DATA_CHANGED. В моем случае не знаю как...
Спасибо.

В логике экрана вызвать GET_SELECTED_ROWS.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 13:43 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
Чтобы в логике экрана вызвать GET_SELECTED_ROWS, нужно чтобы отработала логика экрана. В данном случае при нажатии ENTER в строке таблицы логика экрана не отрабатывает. Элементарно "/h" в командной строке и ENTER в строке таблицы - и ничего не отрабатывает. Что нужно подкрутить?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 14:03 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
ALV объектный или через REUSE*?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 14:05 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
CL_GUI_ALV_GRID


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 14:25 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
Code:
CL_GUI_ALV_GRID->CONSTRUCTOR
  EXPORTING
    i_appl_events = 'X'

Правда, на нажатие ENTER не реагирует всё равно :). Может, попробовать поэкспериментировать с событиями (REGISTER_EDIT_EVENT, SET_REGISTERED_EVENTS, ещё что-нибудь)?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, апр 11 2007, 15:12 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пн, апр 17 2006, 11:03
Сообщения: 123
То что нужно, спасибо.
Чтобы стало реагировать на ENTER пришлось зарегистрировать его как

Code:
        CALL METHOD gr_alvgrid->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>mc_evt_enter.


В sy-ucomm приходит не ENTER а абракадабра типа %_GC 1086 19.
Хоть что-то...

Правка:
можно предположить что GC - это Grid Control, а что за цифры - не понятно

Правка 2:
разобрался: 1086 - это gr_alvgrid->m_guid,
а 19 - это cl_gui_alv_grid=>mc_evt_enter

Всем спасибо


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нажатие ENTER на строке нередактируемого ALV GRID
СообщениеДобавлено: Пт, ноя 23 2007, 09:23 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
author написал(а):
Добрый день.
Подскажите, как поймать нажатие ENTER на выделенной строке таблицы?
Таблица только для чтения. В случае редактируемой таблицы без проблем ловится событие DATA_CHANGED. В моем случае не знаю как...
Спасибо.

Что еще нужно сделать дополнительно, чтобы по Enter сваливаться в обработчик события DATA_CHANGED ?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нажатие ENTER на строке нередактируемого ALV GRID
СообщениеДобавлено: Пт, ноя 23 2007, 10:39 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Art386 написал:
author написал(а):
Добрый день.
Подскажите, как поймать нажатие ENTER на выделенной строке таблицы?
Таблица только для чтения. В случае редактируемой таблицы без проблем ловится событие DATA_CHANGED. В моем случае не знаю как...
Спасибо.

Что еще нужно сделать дополнительно, чтобы по Enter сваливаться в обработчик события DATA_CHANGED ?

Принудительно вызвать метод CHECK_CHANGED_DATA


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нажатие ENTER на строке нередактируемого ALV GRID
СообщениеДобавлено: Вт, ноя 27 2007, 14:24 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Art386 написал:
Что еще нужно сделать дополнительно, чтобы по Enter сваливаться в обработчик события DATA_CHANGED ?


Если поле модифицируемое:
Code:
CALL METHOD gr_alvgrid->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>MC_EVT_MODIFIED.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


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

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


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

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


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

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