Имя: Пароль:
1C
1С v8
Как указать параметр "Начало периода" выборкой из временной таблицы?
0 shlepov
 
05.04.19
17:03
В запросе хотел передать в параметр начало периода минимальное значение из временной таблицы. Конструктор на такой запрос ругается. Что я делаю не так? Можно ли вообще использовать ВТ в условиях без "В ()" ?
ВЫБРАТЬ
    ПретензионноИсковаяРаботаДокументыРасчетов.ДокументРасчетов КАК ДокументРасчетов,
    ПретензионноИсковаяРаботаДокументыРасчетов.Договор КАК Договор,
    ПретензионноИсковаяРаботаДокументыРасчетов.ДокументРасчетов.Дата КАК ДокументРасчетовДата
ПОМЕСТИТЬ Документы
ИЗ
    БизнесПроцесс.ПретензионноИсковаяРабота.ДокументыРасчетов КАК ПретензионноИсковаяРаботаДокументыРасчетов
ГДЕ
    ПретензионноИсковаяРаботаДокументыРасчетов.Ссылка = &Ссылка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ХозрасчетныйОстаткиИОбороты.Субконто3 КАК Субконто3,
    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,
    ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаОборотКт,
    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК СуммаКонечныйОстаток
ИЗ
    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
    ВЫБРАТЬ
        МИНИМУМ(Документы.ДокументРасчетов)
    ИЗ
        Документы
            ,
            &ДатаКон,
            ,
            ,
            Счет = ЗНАЧЕНИЕ(ПланыСчетов.Хозрасчетный.РасчетыСПокупателями),
            ,
            Субконто3 В
                (ВЫБРАТЬ
                    Документы.ДокументРасчетов
                ИЗ
                    Документы)) КАК ХозрасчетныйОстаткиИОбороты
1 Nuobu
 
05.04.19
17:37
Нельзя.
2 Eiffil123
 
05.04.19
18:08
два запроса, параметр через код передавать.
3 Eiffil123
 
05.04.19
18:09
А если СКД - то можно. 2 набора записей.
4 ILM
 
гуру
05.04.19
18:40
Попробуй выразить через тип. Должно сработать.

ВЫРАЗИТЬ(Субконто3 КАК БизнесПроцесс.ПретензионноИсковаяРабота.ДокументыРасчетов) В
                (ВЫБРАТЬ
                    Документы.ДокументРасчетов
                ИЗ
                    Документы)
5 ILM
 
гуру
05.04.19
18:48
(4) Не, дату не получишь, но если субконто3 это документ, то можно ограничить через выборку ВТ.
6 shlepov
 
06.04.19
13:25
Больше спасибо! Буду делать через 2 запроса.
7 IGorS
 
18.09.19
12:51
И все таки, как через два запроса подсунуть параметр в регистр из другого запроса?
8 IGorS
 
18.09.19
13:01
ВЫБРАТЬ
    Таблица.НачалоСеанса КАК НачалоСеанса,
    Таблица.ОкончаниеСеанса КАК ОкончаниеСеанса,
    Таблица.Ссылка КАК Ссылка
ПОМЕСТИТЬ ВТПериоды
ИЗ
    Справочник.Таблица КАК Таблица
ГДЕ
    (Таблица.ДатаПодачи МЕЖДУ &ПериодНачало И &ПериодКонец)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    МИНИМУМ(ВТПериоды.НачалоСеанса) КАК МинНачалоСеанса,
    МАКСИМУМ(ВТПериоды.ОкончаниеСеанса) КАК МаксОкончаниеСеанса
ПОМЕСТИТЬ ВТДиапазон
ИЗ
    ВТПериоды КАК ВТПериоды
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ОплатаОбороты.Счет КАК Счет,
    ОплатаОбороты.СуммаОборот КАК СуммаОборот
ПОМЕСТИТЬ ВТОбороты
ИЗ
    РегистрНакопления.Оплата.Обороты(
Начало,  // Как здесь указать ВТПериоды.НачалоСеанса
Окончание, // А Здесь ВТПериоды.ОкончаниеСеанса
Регистратор, ) КАК ОплатаОбороты
;
9 IGorS
 
18.09.19
13:03
(8) + Ошибся в последнем запросе, вот так:

ВЫБРАТЬ
    ОплатаОбороты.Счет КАК Счет,
    ОплатаОбороты.СуммаОборот КАК СуммаОборот
ПОМЕСТИТЬ ВТОбороты
ИЗ
    РегистрНакопления.Оплата.Обороты(
Начало,  // Как здесь указать ВТПериоды.МинНачалоСеанса

Окончание,// А Здесь ВТПериоды.МаксОкончаниеСеанса

Регистратор, ) КАК ОплатаОбороты
;