Текущее время: Пт, сен 05 2025, 08:53

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




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Переменные Customer exit
СообщениеДобавлено: Пт, авг 05 2005, 12:57 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
Уважаемые специалисты, такой вопрос возник. Подскажите, пожалуйста, как правильно обрабатывать переменные такого типа? Задача следующая: нужно получить отчет, где есть колонки с информацией: за период( месяц+год), за интервал дат ("с первого числа месяца"... "по"), на дату(которая "по"). При запуске отчета требуется заполнить три ограничивающих параметра соответственно. Создала переменные типа Customer exit, чтобы заполнять их в подпрограмме, вычисляя их соответственно с одной даты("по"), которая подается со входа. В инклюде все заполняется, но дальше ничего не передается :-( И ничего не получается. Может все неправильно? Как выйти из ситуации? Может переменные не того типа? Help please!

_________________
С уважением, HB.


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

Зарегистрирован:
Вс, май 29 2005, 13:51
Сообщения: 133
Откуда: Москва
а в чем именно то пролема?
у САПеров есть How To... там все прям по частям расписано как делать - берете за пример и в свое переделываете:)
ну, вставте, например, в код:
Code:
if sy-uname = 'твои позывные'.
break-point.
endif.

и будет видно в чем траблы:)

_________________
Хочешь жить - умей вертеться!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 22 2005, 08:11 
Гость
Более подробно можно? А то из фразы "В инклюде все заполняется, но дальше ничего не передается И ничего не получается." не совсем ясно что вы делаете.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 08 2005, 14:10 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
при формировании отчета данные ограничиваются на конкретную дату в одном столбце, с начала месяца по эту дату в другом, и всего на период запланировано в третьем. При получении приходится три переменных вводить, чтобы получить правильные данные. Хочу вводить только конкретную дату, а остальные даты вычислять автоматически без показа на вводном экране. Ввела дополнительные переменные, прописала их обработку в include ZXRSRU01 когда i_step = 3. Они значения меняют, но при выходе из инклюда - все сбрасывается.
Какие конкретно HOW TO... использовать? Я нашла Verify the variable Input и Derive a variable from another variable. Они не те, которые нужны...

_________________
С уважением, HB.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 08 2005, 14:17 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Ср, авг 18 2004, 10:59
Сообщения: 754
Откуда: Moscow
Давайте сюда абаперный код для заполняемых переменных.

_________________
Фарш невозможно провернуть назад,
И мясо из котлет не восстановишь


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 08 2005, 14:22 
Гость
1.
Helen написала:
прописала их обработку в include ZXRSRU01 когда i_step = 3. Они значения меняют, но при выходе из инклюда - все сбрасывается.



2.
Helen написала:
Какие конкретно HOW TO... использовать? Я нашла Verify the variable Input и Derive a variable from another variable. Они не те, которые нужны...



1. Надо при step = 2

2. "How to derive a variable from another variable"


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 08 2005, 15:06 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
IF i_step = 2.
READ TABLE i_t_var_range WITH KEY vnam = '0P_ECKDT' INTO l_s_var.
IF sy-subrc = 0.
MOVE l_s_var-low TO dat.
MOVE l_s_var-low+0(6) TO period.
l_s_var-low = period.
l_s_var-high = period.
l_s_var-opt = 'BT'.
l_s_var-iobjnm = '0CALMONTH'.
l_s_var-vnam = 'PERIOD2'.
APPEND l_s_var TO i_t_var_range .
COMMIT WORK.
ENDIF.
тут все заполняется и добавляется, но при выходе из инклюда тут же чистится :( попадаем на i_step=3 уже все чисто.

_________________
С уважением, HB.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 09 2005, 09:47 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
и в отчете ограничения не срабатывают, данные выбираются все... Перечитала еще раз про объявления переменных, все сделала как в инструкции - не работает...

например
переменная "С начала месяца"
тип переменной: значение признака
обработка через: программа клиента
признак: календарный день
переменная представляет: Интервал, Необязательно, Не готово к вводу

код в инклюде
READ TABLE i_t_var_range WITH KEY vnam = '0P_ECKDT' INTO l_s_var.
IF sy-subrc = 0.
MOVE l_s_var-low TO dat.
MOVE l_s_var-low+0(6) TO period.
CONCATENATE period '01' INTO dat_n.
l_s_var-low = dat_n..
l_s_var-high = dat.
l_s_var-opt = 'BT'.
l_s_var-iobjnm = '0CALDAY'.
l_s_var-vnam = 'MONTH_B'.
APPEND l_s_var TO i_t_var_range .
ENDIF.

Где-то все же я ошибаюсь, но вот где??

_________________
С уважением, HB.


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

Зарегистрирован:
Вс, июн 26 2005, 22:41
Сообщения: 1135
Откуда: Москва
Пол: Мужской
Code:
IF i_step = 2.
READ TABLE i_t_var_range WITH KEY vnam = '0P_ECKDT' INTO l_s_var.
CASE i_vnam.
    WHEN 'имя твоей переменной'.
        IF sy-subrc = 0.
        MOVE l_s_var-low TO dat.
        MOVE l_s_var-low+0(6) TO period.
        CONCATENATE period '01' INTO dat_n.
        l_s_var-low = dat_n..
        l_s_var-high = dat.
        l_s_var-opt = 'BT'.
        l_s_var-iobjnm = '0CALDAY'.
        l_s_var-vnam = 'MONTH_B'.
        APPEND l_s_var TO i_t_var_range .
ENDCASE.


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

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
Во-первых - в переменные надо объявлять: "обязательно, но начальное значение не разрешено". теперь переменная считается и в отчете данные обновляются. Слава Богу и огромное спасибо уважаемому BW-нику!!! Теперь вопрос немного изменился, я исправила код по его совету, но теперь две переменные не могу изменять, только одну. Строка APPEND l_s_range TO e_t_range при расчете второй переменной заменяет значения первой. Я уж и commit вставила. Не работает. Еще раз большое спасибо BW-ник!.

_________________
С уважением, HB.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 09 2005, 15:28 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 09:33
Сообщения: 300
Откуда: Москва
Пол: Женский
всё, все проблемы решены. спасибо всем за участие. огромное спасибо и низкий поклон BW-нику.
Всем удачи!

_________________
С уважением, HB.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Повтор
СообщениеДобавлено: Вт, сен 27 2005, 13:37 
Гость
Подскажите пож-ста окончательный код user-exita


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

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


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

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


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

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