Текущее время: Ср, июл 23 2025, 22:10

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


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


ВНИМАНИЕ!

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



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

Зарегистрирован:
Пн, июн 18 2012, 17:16
Сообщения: 5
Парни, need your assistance.
В цикле в разных ветках заполняю массивы инициализирую флаги вот так
append <ls_corr_spp> to lt_corr_aI.
l_aI_flag = 'X' .
I в дальнейшем не понятно сколько но мало <= 10
Смысл в том, что в 90% будет попадать только в один aJ , поэтому хочу элегантно знать в скольких таблицах он оказался и если в одной то 1.
Если нет то уже разбирать If ами.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как элегантно проверить переменные на инициализацию?
СообщениеДобавлено: Пн, ноя 26 2012, 11:05 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 351
1) Если важно только количество, можно завести переменную, скажем, count, и после каждого l_aI_flag = 'X' совершать еще и count = count + 1.
2) Если нужно еще и отслеживать какая таблица заполнена, можно добавить внутреннюю табличку t и после каждого l_aI_flag = 'X' делать append I to t (возможно, с начальной проверкой, что I уже не содержится в таблице, или с последующей сортировкой и удалением дубликатов).
ЗЫ. Честно говоря, замечание о заполнении в "в цикле разных ветках" кучи таблиц, из которых большинство в 90% не будет использовано, навевает некоторые сомнения насчет удачности такого алгоритма.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как элегантно проверить переменные на инициализацию?
СообщениеДобавлено: Пн, ноя 26 2012, 11:42 
Старший специалист
Старший специалист

Зарегистрирован:
Сб, июл 28 2007, 20:38
Сообщения: 364
Вроде самое простое что приходит в голову, если исходный алгоритм такой, что в него автоматически нельзя встроить то что нужно
Code:
data: save_i type i.
save_i = 0.
loop.....
  if save_i = 0.
    save_i = i.
   endif.
  if save_i ne i.
    save_i =  - 1.
   endif.
endloop.
case save_i.
  when 0. "Таблицы не заполнены
  when -1. " Заполнено несколько таблиц
  when others. " Заполнена одна таблица i = save_i
endcase.


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

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


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

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


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

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