Имя: Пароль:
1C
1С v8
Срез последних на каждую дату с использованием ТЗ периодов
0 kible
 
18.05.12
09:54
Добрый день! Такая задача.
Нужно на каждую дату из ТЗ периодов получить срез последних 3-х
регистров сведений.
Прочитал статью Книга знаний: Срез последних на каждую дату в запросе и попытался вместо документа заказ покупателя подставить свою ТЗ с периодами.
В итоге получил ошибку.Оказалось, что ТЗ сначала нужно поместить во временную таблицу, а потом выбирать из нее данные, но временную таблицу можно создать только в основном запросе.
Есть какой-то другой способ передать ТЗ с периодами в запрос?
Пока есть идея создать документ в конфигурации, заполнять его ТЧ нужными периодами и из него вытаскивать данные.
1 Megas
 
18.05.12
09:56
(0) Временную таблицу можно создать везде.
2 Maxus43
 
18.05.12
09:56
>>Оказалось, что ТЗ сначала нужно поместить во временную таблицу, а потом выбирать из нее данные
как это мешает то?
3 Megas
 
18.05.12
09:56
Как создавал то?
4 ILM
 
гуру
18.05.12
09:59
Создай сам временную таблицу  периодов.
5 kible
 
18.05.12
10:08
Вот ошибка http://s019.radikal.ru/i615/1205/12/13cdd7de9043.jpg . Возникает при передаче ТЗ в запрос.
6 Megas
 
18.05.12
10:12
(5) Надо вообщето поместить ТЗ в Временную таблицу, а потом выбирать из неё.
7 kible
 
18.05.12
10:22
(6) Объясни пожалуйста как создать во вложенном запросе временную таблицу.
8 Megas
 
18.05.12
10:25
Запрос = новый Запрос();
   Запрос.Текст =
     "ВЫБРАТЬ
    |    Тзполученная.Поле1,
    |    Тзполученная.Поле2,
    |    Тзполученная.Поле3
    |ПОМЕСТИТЬ ВремТабТз
    |ИЗ
    |    &Тз КАК Тзполученная
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    |    ВремТабТз.Поле1,
    |    ВремТабТз.Поле2,
    |    ВремТабТз.Поле3
    |ИЗ
    |    ВремТабТз КАК ВремТабТз"
    Запрос.УстановитьПараметр("Тз",Тз);
9 Megas
 
18.05.12
10:26
в (8) забыл ;

Запрос = новый Запрос();
   Запрос.Текст =
     "ВЫБРАТЬ
    |    Тзполученная.Поле1,
    |    Тзполученная.Поле2,
    |    Тзполученная.Поле3
    |ПОМЕСТИТЬ ВремТабТз
    |ИЗ
    |    &Тз КАК Тзполученная
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////

    |ВЫБРАТЬ
    |    ВремТабТз.Поле1,
    |    ВремТабТз.Поле2,
    |    ВремТабТз.Поле3
    |ИЗ
    |    ВремТабТз КАК ВремТабТз";
    Запрос.УстановитьПараметр("Тз",Тз);
10 kible
 
18.05.12
10:43
(9) Спасибо за помощь.