Текущее время: Вс, авг 03 2025, 23:25

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 03 2005, 16:17 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Почему бы просто не написать
Code:
..
where a~audat in so_date
  and (cond_tab)
...


Ведь если so_date будет пустым, то в конечный запрос к базе это ограничение не попадёт..

PS И еще, в случае использования того, что написано у вас,
запрос будет примерно таким:

where ... a~audat in 'IBT2005010120051003'


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 03 2005, 17:51 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Нет, именно условие a~audat in so_date надо включать или исключать динамически. Условия я формирую до запроса...


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 03 2005, 18:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
можно поступать примерно так:
Code:

data: l_audat_range like so_date[].

if ...
  l_audat_range[] = so_date[].
else.
  clear l_audat_range.
endif.

select ...
where audat in l_audat_range.



в любом случае динамически раскручивать SO_DATE накладно:
Code:

loop at so_date.
...
  if so_option-sign = 'I'.
    ....
  else.
    ....
  endif.

  case so_date-option.
    when 'EQ'.
      concatenate 'OR A~AUDAT = ''' SO_DATE-LOW '''' into ...
      append ...
    when 'BT'.
      concatenate 'OR A~AUDAT BETWEEN ''' SO_DATE-LOW ''' AND ''' SO_DATE-HIGH ''''
             into ...
      append ...
     when ...
  endcase.
endloop.


Это так, малюсенький примерный кусочек того, как это может выглядеть


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 03 2005, 19:17 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Ясно, спасибо!
P.S. А фм какогонить нету по работе с select options и конверта в where?


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

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
См. выше, уже было:
FREE_SELECTIONS_RANGE_2_WHERE


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 08 2008, 10:57 
Специалист
Специалист

Зарегистрирован:
Ср, мар 21 2007, 14:32
Сообщения: 158
2 Vadim:

Цитата:
data: tab type string,
tab1(30) VALUE 'BKPF',
tab2(30) VALUE 'BSID'.
concatenate tab1 'AS A JOIN' tab2 'AS B on b~fil1 eq a~fil1'
into tab separated by space.
select a~fil2 b~fil3 from (tab) into table itab.


У вас что за версия?
У меня 4.6 и в FROM нельзя STRING передавать. Есть еще какое нить решение?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, сен 08 2008, 14:36 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
_gary_ написал(а):
2 Vadim:

Цитата:
data: tab type string,
tab1(30) VALUE 'BKPF',
tab2(30) VALUE 'BSID'.
concatenate tab1 'AS A JOIN' tab2 'AS B on b~fil1 eq a~fil1'
into tab separated by space.
select a~fil2 b~fil3 from (tab) into table itab.


У вас что за версия?
У меня 4.6 и в FROM нельзя STRING передавать. Есть еще какое нить решение?


Ну сделайте не стринг
Data: tab(30) type c. " никто не отменял


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу Пред.  1, 2

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


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

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


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

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