Текущее время: Пт, мар 29 2024, 14:28

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




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Проблема с обработкой переменных СЭ через ABAP
СообщениеДобавлено: Вт, дек 09 2014, 07:33 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 09 2013, 09:19
Сообщения: 38
Всем доброе время суток!

В последнее время столкнулся с весьма не понятной проблемой.

Вкратце, есть форма ввода для бюджета выплат социального характера. В ней два запроса, один для ввода сумм, второй для формирования платежей. Каждый запрос построен на своем уровне агрегации. На каждом уровне агрегации свои фильтры. Но переменные для селекционного экрана в обоих фильтрах одинаковые. В частности на СЭ выводится номер филиала и МВЗ.
Идея была следующая, если провалиться в справочник по МВЗ с СЭ, то в нем должны выводиться только актуальные МВЗ на текущую дату и только для указанного на СЭ филиала. Удобство для пользователя.

Реализовано было через класс ZCL_RSR_VAR_F4_RESTRICT, метод GET_RESTRICTION_FLAT.

В нем сначала идет считывание филиала с СЭ, потом фильтрация таблицы основных данных по МВЗ по филиалу и выбор актуальных на текущую дату.

Выбор филиала следующим образом:
LOOP AT i_t_var_range INTO ls_var_range
WHERE iobjnm = 'ZFILIAL'.
MOVE-CORRESPONDING ls_var_range TO ls_zfilial_range.
ls_zfilial_range-option = ls_var_range-opt.
APPEND ls_zfilial_range TO lt_zfilial_range.
ENDLOOP.

Первоначально СЭ пустой, все поля обязательные для ввода (Всего полей пять: плановый год, филиал, горизонт планирования, МВЗ, квартал). Проблема заключается в том, что при первом запуске после заполнения СЭ в таблице i_t_var_range нет никаких значений, кроме выбранного или указанного руками МВЗ. При повторном вызове СЭ, изменении, например, поля Филиал в таблице i_t_var_range отображается предыдущее заполнение СЭ и больше не меняется. Изменить заполнение таблицы i_t_var_range в последующем можно путем создания варианта пользователя.

Пробовал заполнить СЭ и "проверить" переменные - не помогло.

Если пробовать в RSRT запросы по отдельности - все работает. Изменения СЭ отрабатывают онлайн. Как только два запроса объединяются в рабочую книгу, то сразу же возникает описанная проблема.

Подскажите, пожалуйста, с чем это может быть связано? Больше всего меня смущает то, что переменная СЭ по МВЗ в рабочей книге обновляет значения в режиме онлайн, все остальные переменные нет.

Спасибо!


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

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


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

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


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

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