Запрос к переодическому регистру сведений

Форум 1С: Одинэс.Ру

Найти!

Запрос к переодическому регистру сведений

An79
19.02.2009 - 17:51
Очень нужна ваша помощь, уже обрыл все форумы и литературу и никак не могу сделать вроде бы на первый взгляд простой запрос. Перепробовал всё что находил похожее, но результат один... никакой. Возможно эта задача запросом не решаеться, а возможно...
 
Есть периодический регистр, структуры:
Измерения - ВидТарифа;
Ресурс - Тариф;
 
В регистре содержиться следующая информация:
 
22.05.2008 - Население - 1.14
10.09.2008 - Население - 1.5
05.01.2009 - Население - 2
 
Возможно ли сформировать запрос который бы на вход получил две даты - ДатаНач, ДатаКон и выдал результат в виде таблицы, например:
 
ДатаНач = 05.09.2008, Датакон = 20.09.2008
Результат таблица:
05.09.2008 - 1.14
06.09.2008 - 1.14
07.09.2008 - 1.14
08.09.2008 - 1.14
09.09.2008 - 1.14
10.09.2008 - 1.5
.................
16.09.2008 - 1.5
17.09.2008 - 1.5
18.09.2008 - 1.5
19.09.2008 - 1.5
20.09.2008 - 1.5
 
Возможно такое реализовать? Заранее спасибо за ответы
К списку тем К списку форумов

Интересные темы

odines.ru
01.05.2024 - 23:45
Смотри также:
v8: УТ - учет возвратной тары
Правила обмена
Переключатель Значение по умолчанию

Re: Запрос к переодическому регистру сведений

lalex23
1 - 19.02.2009 - 17:57
.................
означает
11.09.2008 - 1.5
12.09.2008 - 1.5
13.09.2008 - 1.5
14.09.2008 - 1.5
15.09.2008 - 1.5
16.09.2008 - 1.5
?
голым запросом - никак, а с временной таблизой заполненной датами - не проблема

Re: Запрос к переодическому регистру сведений

An79
2 - 19.02.2009 - 18:02
Да, именно так. А с временной таблицей как?

Re: Запрос к переодическому регистру сведений

VZ
3 - 19.02.2009 - 18:08
Смотри Валюты. Структура один-в-один почти, В Валюте есть кратность.
Любимый регистр сведений всех составителей примеров ;)
Где-то видел даже пример отчета с картинкой ;)

Re: Запрос к переодическому регистру сведений

An79
4 - 19.02.2009 - 18:23
Пересмотрел я много таких примеров, но результата никакого... Вроде как оно, но на практике совсем другой результат.

Re: Запрос к переодическому регистру сведений

An79
5 - 19.02.2009 - 19:38
lalex23 сбасибо за подсказку насчет временных таблиц, ещё раз порылся и вот нашёл примерчик http://itland.ru/forum/index.php?showtopic=23687
Немного переделал его к своей задачи и о чудо всё заработало :))))
Вот конечный результат:
 
КС = Новый КвалификаторыДаты(ЧастиДаты.ДатаВремя);
ОписаниеТиповС = Новый ОписаниеТипов("Дата",,КС);
ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Период",ОписаниеТиповС,"Дата",);
 
ТекДата=ДатаНач;
Пока ТекДата<>НачалоДня(ДатаКон) Цикл
Стр=ТЗ.Добавить();
Стр.Период=ТекДата;
ТекДата=ТекДата+86400;
КонецЦикла;
Стр=ТЗ.Добавить();
Стр.Период=ТекДата;
 
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
 
ЗапросПоКалендарю = Новый Запрос;
 
ЗапросПоКалендарю.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
  
ЗапросПоКалендарю.УстановитьПараметр("ТЗ",ТЗ);
ЗапросПоКалендарю.Текст=
"ВЫБРАТЬ
| ТЗ.Период КАК Период
|ПОМЕСТИТЬ СписокДат
|ИЗ
| &ТЗ КАК ТЗ
|
|ИНДЕКСИРОВАТЬ ПО
| Период";
 
ЗапросПоКалендарю.Выполнить();
 
ЗапросПоКалендарю.УстановитьПараметр("ВидТарифа","Население");
ЗапросПоКалендарю.УстановитьПараметр("ТипТарифа","Вода");
 
ЗапросПоКалендарю.Текст=
"ВЫБРАТЬ
| ДатыКалендаряИДатыПоследнихДвижений.ВидТарифа,
| ДатыКалендаряИДатыПоследнихДвижений.ДатаКалендаря,
| ДатыКалендаряИДатыПоследнихДвижений.ТипТарифа,
| Тарифы.ЗначениеТарифа КАК ЗначениеТарифа
|ИЗ
| (ВЫБРАТЬ
| СписокДат.Период КАК ДатаКалендаря,
| МАКСИМУМ(Тарифы.Период) КАК Период,
| Тарифы.ВидТарифа КАК ВидТарифа,
| Тарифы.ТипТарифа КАК ТипТарифа
| ИЗ
| СписокДат КАК СписокДат
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Тарифы КАК Тарифы
| ПО (Тарифы.Период <= СписокДат.Период)
| ГДЕ
| Тарифы.ВидТарифа = &ВидТарифа
| И Тарифы.ТипТарифа = &ТипТарифа
|
| СГРУППИРОВАТЬ ПО
| Тарифы.ВидТарифа,
| СписокДат.Период,
| Тарифы.ТипТарифа) КАК ДатыКалендаряИДатыПоследнихДвижений
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Тарифы КАК Тарифы
| ПО ДатыКалендаряИДатыПоследнихДвижений.Период = Тарифы.Период
| И ДатыКалендаряИДатыПоследнихДвижений.ВидТарифа = Тарифы.ВидТарифа
| И ДатыКалендаряИДатыПоследнихДвижений.ТипТарифа = Тарифы.ТипТарифа";
 
Выборка = ЗапросПоКалендарю.Выполнить().Выбрать();

Интересные темы

odines.ru
01.05.2024 - 23:45
Смотри также:
Ошибка при вызове конструктора (COMОбъект): Недопустимая строка с указанием класса
v8: Несколько Розниц и одна Управление торговлей, как настроить...
Кто перешел на бюджетку 8? Отзывы
К списку тем К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« v8: документ Отчет комитенту в УТ УПП. почему-то "плановые удержания" не удерживаются в документе "Начисление зарпл.сотр.организаций". »
© 2009 Форум 1С: Одинэс.Ру