Имя: Пароль:
1C
 
Как в запросом сделать список дат?
0 DTrofimov
 
20.04.09
17:04
Ну например, период от 01.01.2009 - 15.01.2009. Получаем 01.01.2009, 02.01.2009, 03.01.2009,...,15.01.2009?
1 Широкий
 
20.04.09
17:06
Хитро...ый запрос получается
2 IronDemon
 
20.04.09
17:07
3 Лефмихалыч
 
20.04.09
17:09
Первое, чо в голову приходит - собрать врепменную таблицу из ТЗ, а ТЗ собрать циклом
4 IronDemon
 
20.04.09
17:10
5 Лефмихалыч
 
20.04.09
17:16
а можно наверное и без ОБЪЕДИНИТЬ.
Можно попытаться выбрать период из кого-нить регистра (например, какого-нить оборотного, в котором поменьше оборотов) за нужный период с периодичностью ДЕНЬ и передать в Выбрать() третьим параметром "ВСЕ".
Сам не пробовал
6 Лефмихалыч
 
20.04.09
17:17
+(5) черезжопный вариант, конечно, зато без простыни с объединениями
7 Широкий
 
20.04.09
17:25
Вот мой вариант через временные таблицы
разница между датами в 27 лет должно наверно хватить

ВЫБРАТЬ
   1 КАК Цифра
ПОМЕСТИТЬ ТаблицаЦифр

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   2

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   3

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   4

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   5

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   6

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   7

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   8

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   9

ОБЪЕДИНИТЬ

ВЫБРАТЬ
   0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ДОБАВИТЬКДАТЕ(&НачДата, ДЕНЬ, ТаблицаЦифр.Цифра + ТаблицаЦифр1.Цифра * 10 + ТаблицаЦифр2.Цифра * 100 + ТаблицаЦифр3.Цифра * 1000) КАК Число
ИЗ
   ТаблицаЦифр КАК ТаблицаЦифр,
   ТаблицаЦифр КАК ТаблицаЦифр1,
   ТаблицаЦифр КАК ТаблицаЦифр2,
   ТаблицаЦифр КАК ТаблицаЦифр3
ГДЕ
   ДОБАВИТЬКДАТЕ(&НачДата, ДЕНЬ, ТаблицаЦифр.Цифра + ТаблицаЦифр1.Цифра * 10 + ТаблицаЦифр2.Цифра * 100 + ТаблицаЦифр3.Цифра * 1000) <= &КонДата

УПОРЯДОЧИТЬ ПО
   Число
;

////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ТаблицаЦифр