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

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




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Данные за предыдущий год
СообщениеДобавлено: Чт, фев 26 2015, 16:05 
Специалист
Специалист

Зарегистрирован:
Ср, авг 06 2014, 09:44
Сообщения: 239
Добрый день!
У меня есть отчет, в котором используются две структуры и определение ячеек. Отчет строится нарастающим итогом в разбивке по месяцам. Для этого созданы переменные для каждого месяца года (январь, февраль ...) из переменной диапазона, которой ограничивается весь отчет. Т.е. в фильтр вынесен признак "Календарный год/месяц" ограниченный переменной "диапазон месяцев". Когда бизнес пользователь задает период например с 01.2014 по 12.2014 год, месяца определяются 01.2014, 02.2014 и т.д. Отчет работает четко. Но нужно добавить еще одну ячейку, которая будет вытаскивать тот же показатель только за предыдущий год. Т.е. если отчет формируется за 2014, то показатель должен принять значение за 2013 год. Хочу создать переменную "Предыдущий год" опять токи из диапазона месяцев. Чтобы этой переменной ограничить признак "Календарный год". Для этого в BEx сначала нужно создать переменную для признака "Календарный год" с обработкой через "Программу клиента". Затем написать код и поместить его в ZXRSRU01.
Написала код. Подскажите пожалуйста, правильно ли?

*** Предыдущий год
when 'предыдущий год'.
if i_step = 2.
loop at I_T_VAR_RANGE into zv_var.
if ( zv_var-vnam = 'диапазон месяцев' ).
z_month = zv_var-low.
endif.
endloop.

z_month = z_month – 365.
z_year = z_month(4).
L_S_RANGE-LOW = z_year.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
append L_S_RANGE to E_T_RANGE.
endif.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Данные за предыдущий год
СообщениеДобавлено: Пт, фев 27 2015, 14:49 
Специалист
Специалист

Зарегистрирован:
Ср, авг 06 2014, 09:44
Сообщения: 239
Переделала код. Посмотрите пожалуйста корректно?
*** Предыдущий год из диапазона
when 'ZVPYEAR'.
if i_step = 2.
loop at I_T_VAR_RANGE into zv_var.
if ( zv_var-vnam = 'ZVMONTHS' ).
zv_month = zv_var-low.

zv_month = zv_month – 12.
zv_year = zv_month(4).
L_S_RANGE-LOW = zv_year.
L_S_RANGE-SIGN = 'I'.
L_S_RANGE-OPT = 'EQ'.
append L_S_RANGE to E_T_RANGE.

exit.
endif.
endloop.
endif.


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

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


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

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


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

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