Добрый день. Начинающий программист. Хочу решить задачу и хотелось бы у грамотных людей уточнить ход выполнения задачи:

на входе задаем параметры:
период - начало ___ дата
период - окончание ___ дата
ТОР GP - ___

Система анализирует кол-во поступлений товара с привязкой по заданному ТОПУ, и если кол-во документов "поступлений товара" больше 1, за указанный период времени. На выходе получаем КОЛОНКИ:

1. бренд (сортировка от А до Я)
2. код
3. номенклатура
4. сумма (по кол-ву) закупаемого товара
5. сумма (по кол-ву) проданного товара. (продажа-возврат, не равно продажа) ЕСЛИ ПРОДАЖ НЕ БЫЛО, ТО = ПУСТО.
6. TOP GP

Я, так понимаю, должен работать с документами "поступление товаров и услуг" и "реализация товаров и услуг", но в пределах регистра. Подходит ли регистр накопления "ТоварыОрганизаций" для решения задачи?

Пока получается так, но программа ещё в разработке:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ТоварыОрганизаций.Номенклатура.Бренд КАК Бренд,
    ТоварыОрганизаций.Номенклатура.Код КАК Код,
    ТоварыОрганизаций.Номенклатура КАК Номенклатура,
    СУММА(ВЫБОР
    КОГДА ТоварыОрганизаций.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    ТОГДА ТоварыОрганизаций.Количество
    КОНЕЦ) КАК КоличествоЗакупаемогоТовара,
    СУММА(ВЫБОР
    КОГДА ТоварыОрганизаций.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
    ТОГДА ТоварыОрганизаций.Количество
    КОНЕЦ) КАК КоличествоПроданногоТовара,
    ТОП.Свойство КАК TOPGP
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций
    ПО (ТоварыОрганизаций.Номенклатура = ТОП.Объект)
    ГДЕ
    (ТоварыОрганизаций.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    ИЛИ ТоварыОрганизаций.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг)
    И ВЫБОР
    КОГДА ТоварыОрганизаций.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    ТОГДА ТоварыОрганизаций.Период МЕЖДУ &ПериодНачало И &ПериодОкончание
    КОНЕЦ

    СГРУППИРОВАТЬ ПО
    ТоварыОрганизаций.Номенклатура.Бренд,
    ТоварыОрганизаций.Номенклатура.Код,
    ТоварыОрганизаций.Номенклатура,
    ТОП.Свойство

    УПОРЯДОЧИТЬ ПО
    Бренд
```

Ещё вопрос по этому условию : "и если кол-во документов "поступлений товара" больше 1, за указанный период времени.". Как задать его?
И с этим тоже не могу понять :" (продажа-возврат, не равно продажа) "?
---
нашёл ошибку. Нужно
```1c
    ИМЕЮЩИЕ
    КОЛИЧЕСТВО(Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг) > 1
```
 заменить на
```1c
    ИМЕЮЩИЕ
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Закупки.Регистратор) > 1
```
, так как если будет Поступление товаров и услуг, от которого пойдет более одного движения в Регистр.Закупки с TOPGP, то каждое из этих движений увеличит результат функции КОЛИЧЕСТВО(Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг). То есть, документ будет один, а движений несколько. А в задаче условие "и если кол-во документов "поступлений товара" больше 1", нужно считать именно документы Поступления, а не сами поступления.
---
лучше для поступлений использовать регистр Закупки, а для продаж Продажи, как они именно обзываются у вас в конфигурации уточняйте
сделать пакетный запрос отдельными частями по разным регистрам с последующим соединением по номенклатуре или два запроса с объединением
---
Хорошо. Сейчас попробую. А что касается:
Ещё вопрос по этому условию : "и если кол-во документов "поступлений товара" больше 1, за указанный период времени.". Как задать его?
И с этим тоже не могу понять :" (продажа-возврат, не равно продажа) "?
---
Если я Вас правильно понял, то получается так:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Номенклатура.Бренд КАК Бренд,
    Закупки.Номенклатура.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    СУММА(Закупки.Количество) КАК КоличествоЗакупаемогоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ Закупки
    ИЗ
    РегистрНакопления.Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТОП КАК ТОП
    ПО Закупки.Номенклатура = ТОП.Объект
    ГДЕ
    Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    И Закупки.Период МЕЖДУ &ПериодНачало И &ПериодОкончание

    СГРУППИРОВАТЬ ПО
    Закупки.Номенклатура.Бренд,
    Закупки.Номенклатура.Код,
    Закупки.Номенклатура,
    ТОП.Свойство
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ Продажи
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг

    СГРУППИРОВАТЬ ПО
    ТОП.Свойство,
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.Топ КАК Топ
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура

    УПОРЯДОЧИТЬ ПО
    Бренд
```
---
ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
ПОМЕСТИТЬ ТОП
ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
;

единственно,я бы вот это убрал совсем

а внутреннее соединение по ТОП заменил бы на левое из РегистрСведений.ЗначенияСвойствОбъектов ПО ЗначенияСвойствОбъектов.Объект
а ЗначенияСвойствОбъектов.Свойство = &ТОП вынес в условвие
---
Такой вариант выполняется в 100 раз (это не образное выражение) дольше:

```1c
    ВЫБРАТЬ
    Закупки.Номенклатура.Бренд КАК Бренд,
    Закупки.Номенклатура.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    СУММА(Закупки.Количество) КАК КоличествоЗакупаемогоТовара,
    ЗначенияСвойствОбъектов.Свойство КАК TOPGP
    ПОМЕСТИТЬ Закупки
    ИЗ
    РегистрНакопления.Закупки КАК Закупки
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО Закупки.Номенклатура = ЗначенияСвойствОбъектов.Объект
    ГДЕ
    Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    И Закупки.Период МЕЖДУ &ПериодНачало И &ПериодОкончание

    СГРУППИРОВАТЬ ПО
    Закупки.Номенклатура.Бренд,
    Закупки.Номенклатура.Код,
    Закупки.Номенклатура,
    ЗначенияСвойствОбъектов.Свойство
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ЗначенияСвойствОбъектов.Свойство КАК TOPGP
    ПОМЕСТИТЬ Продажи
    ИЗ
    РегистрНакопления.Продажи КАК Продажи
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО Продажи.Номенклатура = ЗначенияСвойствОбъектов.Объект
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг

    СГРУППИРОВАТЬ ПО
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд,
    ЗначенияСвойствОбъектов.Свойство
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.TOPGP КАК TOPGP
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура
    ГДЕ
    Закупки.TOPGP = &ТОП

    УПОРЯДОЧИТЬ ПО
    Бренд
```

чем этот вариант:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Номенклатура.Бренд КАК Бренд,
    Закупки.Номенклатура.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    СУММА(Закупки.Количество) КАК КоличествоЗакупаемогоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ Закупки
    ИЗ
    РегистрНакопления.Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТОП КАК ТОП
    ПО Закупки.Номенклатура = ТОП.Объект
    ГДЕ
    Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    И Закупки.Период МЕЖДУ &ПериодНачало И &ПериодОкончание

    СГРУППИРОВАТЬ ПО
    Закупки.Номенклатура.Бренд,
    Закупки.Номенклатура.Код,
    Закупки.Номенклатура,
    ТОП.Свойство
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ Продажи
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг

    СГРУППИРОВАТЬ ПО
    ТОП.Свойство,
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.Топ КАК Топ
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура

    УПОРЯДОЧИТЬ ПО
    Бренд
```
---
если с внутренним соединением результаты верные, то используйте его
---
Результаты совпадают в двух запросах, но первый выполняется очень долго.
Подскажите ещё с :
"и если кол-во документов "поступлений товара" больше 1, за указанный период времени.". Как задать его? За период я задаю, а вот как проверить на количество документов?
И с этим тоже не могу понять :" (продажа-возврат, не равно продажа) "?
---
больше 1 - это, например, КОЛИЧЕСТВО(Закупки.Регистратор.Ссылка)
продажа-возврат <> продажа - тут надо данные возврата получить и просто вычислить арифметически через ВЫБОР КОГДА
---
Спасибо. Буду пробовать.
---
продажа-возврат <> продажа - тут надо данные возврата получить и просто вычислить арифметически через ВЫБОР КОГДА

Немного не получается в этом моменте. Я получаю возврат таким путём:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоВозвращённогоТовара,
    ТОП.Свойство КАК Топ
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя

    СГРУППИРОВАТЬ ПО
    ТОП.Свойство,
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд
```

Продажи получаю таким путём:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ТОП.Свойство КАК Топ
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг

    СГРУППИРОВАТЬ ПО
    ТОП.Свойство,
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд
```

Дальше я где должен выбор сделать? В условии основного запроса:

```1c
    ВЫБРАТЬ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.Топ КАК Топ
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура

    УПОРЯДОЧИТЬ ПО
    Бренд
```

Или в поле Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара основного запроса?
---
как-то так

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Объект,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;
    ////////////////////////////////////////////////////////////­­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоВозвращённогоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ тзВозвраты
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
    ;

    ////////////////////////////////////////////////////////////­­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ТОП.Свойство КАК Топ
    ПОМЕСТИТЬ тзПродажи
    ИЗ
    ТОП КАК ТОП
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
    ПО ТОП.Объект = Продажи.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
    ;
    /////////////////////////////////////////
    ВЫБРАТЬ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Возвраты.КоличествоВозвращённогоТовара КАК КоличествоВозвращённогоТовара,
    ВЫБОР
    КОГДА Продажи.КоличествоПроданногоТовара - Возвраты.КоличествоВозвращённогоТовара <> Продажи.КоличествоПроданногоТовара
    ТОГДА "продажи больше, чем вернули"
    ИНАЧЕ "продали меньше, чем вернули"
    КОНЕЦ
    Закупки.Топ КАК Топ
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ тзПродажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ тзВозвраты КАК Возвраты
    ПО Закупки.Номенклатура = Возвраты.Номенклатура
```

или через ОБЪЕДИНИТЬ выборки по возвратам и продажам
---
Мне кажется, не совсем это подойдёт мне. Так как по количеству мне нужно только две строки:
1. сумма (по кол-ву) закупаемого товара
2. сумма (по кол-ву) проданного товара. (продажа-возврат, не равно продажа) ЕСЛИ ПРОДАЖ НЕ БЫЛО, ТО = ПУСТО.
---
значит не так понял или не так объяснили )
покрутите результаты запроса с лишними данными, без лишних данных
вывести в табличный документ только нужные колонки не составит труда
---
За колонки я не переживаю, но вот никак не могу разобраться с добавлением этого условия 2. сумма (по кол-ву) проданного товара. (продажа-возврат, не равно продажа) ЕСЛИ ПРОДАЖ НЕ БЫЛО, ТО = ПУСТО. в мой запрос, так как он меня устраивает.

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Номенклатура,
    ЗначенияСвойствОбъектов.Свойство КАК TOPGP
    ПОМЕСТИТЬ ТОП
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Значение ССЫЛКА Справочник.ЗначенияСвойствОбъектов
    И ЗначенияСвойствОбъектов.Свойство = &ТОП
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Номенклатура.Бренд КАК Бренд,
    Закупки.Номенклатура.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    СУММА(Закупки.Количество) КАК КоличествоЗакупаемогоТовара,
    ТОП.TOPGP КАК TOPGP
    ПОМЕСТИТЬ Закупки
    ИЗ
    РегистрНакопления.Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТОП КАК ТОП
    ПО Закупки.Номенклатура = ТОП.Номенклатура
    ГДЕ
    Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг
    И Закупки.Период МЕЖДУ &ПериодНачало И &ПериодОкончание

    СГРУППИРОВАТЬ ПО
    Закупки.Номенклатура.Бренд,
    Закупки.Номенклатура.Код,
    Закупки.Номенклатура,
    ТОП.TOPGP
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Продажи.Номенклатура.Бренд КАК Бренд,
    Продажи.Номенклатура.Код КАК Код,
    Продажи.Номенклатура КАК Номенклатура,
    СУММА(Продажи.Количество) КАК КоличествоПроданногоТовара,
    ТОП.TOPGP КАК TOPGP
    ПОМЕСТИТЬ Продажи
    ИЗ
    РегистрНакопления.Продажи КАК Продажи
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТОП КАК ТОП
    ПО Продажи.Номенклатура = ТОП.Номенклатура
    ГДЕ
    Продажи.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг

    СГРУППИРОВАТЬ ПО
    Продажи.Номенклатура,
    Продажи.Номенклатура.Код,
    Продажи.Номенклатура.Бренд,
    ТОП.TOPGP
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Бренд КАК Бренд,
    Закупки.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.TOPGP КАК TOPGP
    ИЗ
    Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура

    УПОРЯДОЧИТЬ ПО
    Бренд
```
---
я в таких случаях беру карандаши и начинаю рисовать... схему условия, граничные условия, входящие данные, что получается в результате если подать в условие то, а если это...
и становится понятно, что не хватает
---
Добрый день. Извините что ещё раз вас беспокою, получилось сделать всё и добиться нужно результат (как я считал), но вот руководитель говорит, что есть ошибка, а я уже голову сломал в попытках найти её. Не могли бы Вы подсказать, где (возможно) вы считаете, что есть ошибка?

```1c
    ВЫБРАТЬ
    Закупки.Номенклатура КАК Номенклатура,
    СУММА(Закупки.Количество) КАК КоличествоЗакупаемогоТовара,
    ЗначенияСвойствОбъектов.Свойство КАК TOPGP
    ПОМЕСТИТЬ Закупки
    ИЗ
    РегистрНакопления.Закупки КАК Закупки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО Закупки.Номенклатура = ЗначенияСвойствОбъектов.Объект
    ГДЕ
    Закупки.Период МЕЖДУ &ПериодНачало И &ПериодОкончание
    И ЗначенияСвойствОбъектов.Значение = &TOPGP
    И Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг

    СГРУППИРОВАТЬ ПО
    Закупки.Номенклатура,
    ЗначенияСвойствОбъектов.Свойство

    ИМЕЮЩИЕ
    КОЛИЧЕСТВО(Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг) > 1
    ;

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

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    Закупки.Номенклатура.Бренд КАК Бренд,
    Закупки.Номенклатура.Код КАК Код,
    Закупки.Номенклатура КАК Номенклатура,
    Закупки.КоличествоЗакупаемогоТовара КАК КоличествоЗакупаемогоТовара,
    Продажи.КоличествоПроданногоТовара КАК КоличествоПроданногоТовара,
    Закупки.TOPGP КАК TOPGP
    ИЗ
    Закупки КАК Закупки
    ЛЕВОЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура

    УПОРЯДОЧИТЬ ПО
    Бренд
```
---
добрый
разве что закупки номенклатуры, кроме периода еще и по бренду (свойству отбираются), а продажи номенклатуры только по периоду
получается несоответствие по товарам закупленным и проданным
возможно в этом ошибка?
---
А разве при
```1c
    Закупки КАК Закупки
    ЛЕВОЕ СОЕДИНЕНИЕ Продажи КАК Продажи
    ПО Закупки.Номенклатура = Продажи.Номенклатура
```

к закупкам не подберутся продажи с одинаковым свойством ?

Плюс я пробовал в 3м пакете соединить (внутренним) закупки с значениями характеристик одновременно с продажи (внутреннее) и значения характеристик, то выдавало ошибку, что связь продажи (внутреннее) и значения характеристик противоречит связи (внутренним) закупки с значениями характеристик. А если сделать разными пакетами (то есть в одном закупки + характеристики, в другом продажи + характеристики, и всё это соединить в 3м пакете), то выходит тот же результат, но конструкция получается не оптимальной.
---
тогда не вижу ошибок, вроде все верно
спросите руководителя, что ему не нравится
---
нашёл ошибку. Нужно
```1c
    ИМЕЮЩИЕ
    КОЛИЧЕСТВО(Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг) > 1
```
 заменить на
```1c
    ИМЕЮЩИЕ
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Закупки.Регистратор) > 1
```
, так как если будет Поступление товаров и услуг, от которого пойдет более одного движения в Регистр.Закупки с TOPGP, то каждое из этих движений увеличит результат функции КОЛИЧЕСТВО(Закупки.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг). То есть, документ будет один, а движений несколько. А в задаче условие "и если кол-во документов "поступлений товара" больше 1", нужно считать именно документы Поступления, а не сами поступления.
---
Что за конфигурация? Как она называется?
---
Trade (10.3.29.1)
---
Trade (10.3.29.1)
Тогда смотри 3-й пост.