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

Часовой пояс: 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 часа


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

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


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

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