Имя: Пароль:
1C
1С v8
8.3 СКД соединение наборов
0 an7man
 
11.03.16
16:09
Есть
регистр накопления Товары,
с измерениями Товар,Склад
и ресурсом Количество.

Движения по нему регистрируются документами Приход,Списание,Перемещение.

Нужен отчет по остаткам, расшифровка у которого по Регистратору должна выводить список документов за период от последнего момента "ноль" (нет товара на остатках) до даты отчета.  Важный ньюанс: расшифровка не должна учитывать измерение Склад родительского отчета, т.е. если тыкаемся в остаток Товар1 на Склад15 то должны увидеть все документы от прихода на СкладN до перемещения на Склад15.

Набор1:

ВЫБРАТЬ
    ТоварыОстатки.Склад,
    ТоварыОстатки.Товар,
    ТоварыОстатки.КоличествоОстаток
ИЗ
    РегистрНакопления.Товары.Остатки({&Период}, ) КАК ТоварыОстатки


Набор2:

ВЫБРАТЬ
    МАКСИМУМ(ВЫРАЗИТЬ(ТоварыОстаткиИОбороты.Регистратор КАК Документ.Списание).Дата) КАК НулеваяДата,
    ТоварыОстаткиИОбороты.Товар КАК Товар
ПОМЕСТИТЬ НулевыеДаты
ИЗ
    РегистрНакопления.Товары.ОстаткиИОбороты(, {(&Период)}, Авто, , ) КАК ТоварыОстаткиИОбороты

СГРУППИРОВАТЬ ПО
    ТоварыОстаткиИОбороты.Товар

ИМЕЮЩИЕ
    СУММА(ТоварыОстаткиИОбороты.КоличествоКонечныйОстаток) = 0

ИНДЕКСИРОВАТЬ ПО
    Товар
    ;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТоварыОстатки.Товар,
    ТоварыОстаткиИОбороты.Регистратор
ИЗ
    РегистрНакопления.Товары.Остатки({(&Период)}, ) КАК ТоварыОстатки
        ЛЕВОЕ СОЕДИНЕНИЕ НулевыеДаты КАК НулевыеДаты
        ПО ТоварыОстатки.Товар = НулевыеДаты.Товар
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Товары.ОстаткиИОбороты(, {(&Период)}, Регистратор, Движения, ) КАК ТоварыОстаткиИОбороты
        ПО ТоварыОстатки.Товар = ТоварыОстаткиИОбороты.Товар
            И (НулевыеДаты.НулеваяДата ЕСТЬ NULL
                ИЛИ НулевыеДаты.НулеваяДата < ТоварыОстаткиИОбороты.Регистратор.Дата)




Наборы связаны только по товару. Не получается добиться независимости в расшифровке от Склада родительского отчета. Т.е. если в структуре родительского отчета фигурирует измерение Склад, то расшифровка выдает только последнее перемещение на этот склад.
Независимо от того, куда вы едете — это в гору и против ветра!