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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Какое событие соответствует заполнению поля?
СообщениеДобавлено: Пт, июн 06 2008, 16:47 
Специалист
Специалист

Зарегистрирован:
Пн, фев 11 2008, 16:17
Сообщения: 122
Пол: Мужской
Добрый день!

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

Подскажите, пожалуйста, как это можно реализовать?

P. S. Событие data_changed здесь не срабатывает...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Какое событие соответствует заполнению поля?
СообщениеДобавлено: Пт, июн 06 2008, 16:57 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Danila написал:
Добрый день!

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

Подскажите, пожалуйста, как это можно реализовать?

Никак. Тяжелое наследие терминалов.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, июн 07 2008, 13:04 
Специалист
Специалист

Зарегистрирован:
Пн, фев 11 2008, 16:17
Сообщения: 122
Пол: Мужской
Тогда попробуем другим путём...
Вот такой код.

Code:
METHOD renew.
    IF l_flag <> 0.
      RETURN.
    ENDIF.
    l_flag = 1.
    CALL METHOD obj_alv->check_changed_data.
    LOOP AT it_tab3 INTO wa_tab3.
      wa_tab3-netwr = wa_tab3-menge * wa_tab3-tbtwr.
      wa_tab3-menge = wa_tab3-mengez * wa_tab3-extsrvno / 100.
      MODIFY it_tab3 FROM wa_tab3.
    ENDLOOP.
    CALL METHOD obj_alv->refresh_table_display.
    l_flag = 0.
    l_scrnum = 1.
   
  ENDMETHOD.   


Данный метод обрабатывает изменение значения какой-либо доступной ячейки в объектной ALV-таблице, расположенной после заголовка, с которым проблеммы.

Без конструкции LEAVE TO SCREEN 303 валится в дамп, а с ней экран, соответственно, обновляется полностью, вместе с несохранёнными данными заголовка.

Подскажите, пожалуйста, как можно решить данную проблемму?

Т. е. чтобы обновлялась только ALV-таблица, а не весь экран.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, июн 07 2008, 13:35 
Специалист
Специалист

Зарегистрирован:
Пн, фев 11 2008, 16:17
Сообщения: 122
Пол: Мужской
Проблемма решена обработкой события DATA_CHANGED_FINISHED :)


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

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


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

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


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

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