Имя: Пароль:
1C
1С v8
СКД Дублируются строки
0 1c_yeah
 
15.05.14
12:39
Здравствуйте ув. форумчане. помогите разобраться в след. ситуации:

Создаю отчет Цены номенклатуры с остатками:

Если для номенклатура которая имеется на нескольких складах но в самом отчете склад не выводится то строк выходит столько же как и складов. Почему не сворачивается?
1 Wobland
 
15.05.14
12:40
а ты просил свернуть? мож, тебе так и надо
2 1c_yeah
 
15.05.14
12:41
Когда делаю простой запрос номенклатура, склад , остаток и в отчете не вывожу склад тогда без всяких просьб сворачивается! А в моем случае нет
3 1c_yeah
 
15.05.14
12:49
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    СвободныеОстаткиОстатки.Номенклатура,
    СвободныеОстаткиОстатки.Характеристика,
    СвободныеОстаткиОстатки.Склад,
    СвободныеОстаткиОстатки.ВНаличииОстаток КАК ВНаличииОстаток,
    СвободныеОстаткиОстатки.ВРезервеОстаток КАК ВРезервеОстаток,
    ЕСТЬNULL(СвободныеОстаткиОстатки.ВНаличииОстаток, 0) - ЕСТЬNULL(СвободныеОстаткиОстатки.ВРезервеОстаток, 0) КАК Остаток
ПОМЕСТИТЬ СвободныеОстатки
ИЗ
    РегистрНакопления.СвободныеОстатки.Остатки(&Период, ) КАК СвободныеОстаткиОстатки
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    УпаковкиНоменклатуры.Ссылка КАК Упаковка,
    УпаковкиНоменклатуры.Владелец,
    УпаковкиНоменклатуры.Коэффициент,
    УпаковкиНоменклатуры.Ширина,
    УпаковкиНоменклатуры.Высота,
    УпаковкиНоменклатуры.Глубина
ПОМЕСТИТЬ Упаковки
ИЗ
    Справочник.УпаковкиНоменклатуры КАК УпаковкиНоменклатуры
ГДЕ
    УпаковкиНоменклатуры.ЕдиницаИзмерения.Наименование ПОДОБНО "Короб%"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
    ЦеныНоменклатурыСрезПоследних.Номенклатура.ЦеноваяГруппа КАК ЦеноваяГруппа,
    ЦеныНоменклатурыСрезПоследних.Номенклатура.Описание КАК ТорговаяХарактеристика,
    ЦеныНоменклатурыСрезПоследних.Характеристика КАК Характеристика,
    ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
    ЦеныНоменклатурыСрезПоследних.Валюта КАК Валюта,
    ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
    ЕСТЬNULL(СвободныеОстатки.Остаток, 0) КАК Остаток,
    ШтрихкодыНоменклатуры.Штрихкод,
    Упаковки.Коэффициент,
    Упаковки.Ширина,
    Упаковки.Высота,
    Упаковки.Глубина,
    ЕСТЬNULL(НоменклатурнаяГруппа.Значение, ЗНАЧЕНИЕ(Справочник.ЗначенияСвойствОбъектов.ПустаяСсылка)) КАК НоменклатурнаяГруппа,
    ЕСТЬNULL(ОсновнаяХарактеристика.Значение, ЗНАЧЕНИЕ(Справочник.ЗначенияСвойствОбъектов.ПустаяСсылка)) КАК ОсновнаяХарактеристика,
    СвободныеОстатки.Склад
ПОМЕСТИТЬ Цены
ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
            &Период,
            ВидЦены = &ВидЦены
                И Валюта = &Валюта
                И Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)) КАК ЦеныНоменклатурыСрезПоследних
        ЛЕВОЕ СОЕДИНЕНИЕ СвободныеОстатки КАК СвободныеОстатки
        ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = СвободныеОстатки.Номенклатура
            И ЦеныНоменклатурыСрезПоследних.Характеристика = СвободныеОстатки.Характеристика
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихкодыНоменклатуры КАК ШтрихкодыНоменклатуры
        ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ШтрихкодыНоменклатуры.Номенклатура
            И ЦеныНоменклатурыСрезПоследних.Характеристика = ШтрихкодыНоменклатуры.Характеристика
        ЛЕВОЕ СОЕДИНЕНИЕ Упаковки КАК Упаковки
        ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = Упаковки.Владелец
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатурнаяГруппа
        ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = НоменклатурнаяГруппа.Ссылка
            И (НоменклатурнаяГруппа.Свойство.Наименование = "Номенклатурная группа")
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК ОсновнаяХарактеристика
        ПО ЦеныНоменклатурыСрезПоследних.Номенклатура = ОсновнаяХарактеристика.Ссылка
            И (ОсновнаяХарактеристика.Свойство.Наименование = "Основная характеристика")
ГДЕ
    ЦеныНоменклатурыСрезПоследних.Цена > 0
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВЫБОР
        КОГДА Цены.Номенклатура.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
            ТОГДА ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
        ИНАЧЕ ВЫБОР
                КОГДА Цены.Номенклатура.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
                    ТОГДА Цены.Номенклатура.Родитель
                ИНАЧЕ ВЫБОР
                        КОГДА Цены.Номенклатура.Родитель.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
                            ТОГДА Цены.Номенклатура.Родитель.Родитель
                        ИНАЧЕ ВЫБОР
                                КОГДА Цены.Номенклатура.Родитель.Родитель.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
                                    ТОГДА Цены.Номенклатура.Родитель.Родитель.Родитель
                                ИНАЧЕ ВЫБОР
                                        КОГДА Цены.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
                                            ТОГДА Цены.Номенклатура.Родитель.Родитель.Родитель.Родитель
                                    КОНЕЦ
                            КОНЕЦ
                    КОНЕЦ
            КОНЕЦ
    КОНЕЦ КАК Группа,
    Цены.НоменклатурнаяГруппа,
    Цены.Номенклатура КАК Номенклатура,
    Цены.Характеристика КАК Характеристика,
    Цены.ЦеноваяГруппа КАК ЦеноваяГруппа,
    Цены.Номенклатура.Артикул КАК Артикул,
    Цены.ВидЦены КАК ВидЦены,
    Цены.Валюта КАК Валюта,
    Цены.Цена КАК Цена,
    ВЫБОР
        КОГДА Цены.Остаток <= 0
            ТОГДА "Отсутствует"
        ИНАЧЕ ВЫБОР
                КОГДА Цены.Остаток < 5
                    ТОГДА "< 5"
                ИНАЧЕ ВЫБОР
                        КОГДА Цены.Остаток < 30
                            ТОГДА "< 30"
                        ИНАЧЕ ВЫБОР
                                КОГДА Цены.Остаток < 100
                                    ТОГДА "< 100"
                                ИНАЧЕ ВЫБОР
                                        КОГДА Цены.Остаток >= 100
                                            ТОГДА "> 100"
                                        ИНАЧЕ "неизвестно"
                                    КОНЕЦ
                            КОНЕЦ
                    КОНЕЦ
            КОНЕЦ
    КОНЕЦ КАК Остаток,
    Цены.Штрихкод,
    Цены.Номенклатура.Вес КАК Вес,
    Цены.Номенклатура.Объем КАК Объем,
    Цены.Коэффициент,
    Цены.Ширина,
    Цены.Высота,
    Цены.Глубина,
    Цены.ТорговаяХарактеристика,
    Цены.ОсновнаяХарактеристика
ИЗ
    Цены КАК Цены
4 1c_yeah
 
15.05.14
12:52
Вот если убрать склад из полей вирт таблицы "Цены" тогда будет сворачиватся, но склад надо для отбора
5 Пеппи
 
15.05.14
12:56
в виртуальной таблице сделай отбор вида {склад=&выбранный_склад}
6 1c_yeah
 
15.05.14
12:58
(5)  не так не подходит. Надо что б запросом получалась ном - ра на всех складах.
7 1c_yeah
 
15.05.14
13:01
(4)  та и не только для отбора а и для вывода в отчет