Здравствуйте Дорогие Инфостартовцы!
Проблема возникает при подсчете Суммы вот в этой строчке

```1c
    ОбластьДанные2.Параметры.Итог = Итог + ВыборкаГруппа.Количество1*ВыборкаГруппа.Цена;
```

```1c
    Не удалось сформировать внешнюю печатную форму!
    Преобразование значения к типу Число не может быть выполнено
```

```1c
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТзИнгридиенты = Новый ТаблицаЗначений();
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");

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

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);

    РезультатЗапроса = Запрос.Выполнить();
    //Шапка
    ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
    Пока ВыборкаСтатус.Следующий() Цикл
    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
    //ОбластьДанные1.Параметры.СтатусПартии = ВыборкаСтатус.СтатусПартии;
    ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
    ОбластьДанные1.Параметры.СтатусПартии =
    ?(ВыСтСтПа = "Продажи фирмы", "Купленный",
    ?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
    ТабДокумент.Вывести(ОбластьДанные1);
    //Группа
    Итог = 0;
    ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");
    Пока ВыборкаГруппа.Следующий() Цикл
    ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
    ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
    //Итог
    ОбластьДанные2.Параметры.Итог = Итог + ВыборкаГруппа.Количество1*ВыборкаГруппа.Цена; //Вот на эту строчку ругается, "Преобразование значения к типу Число не может быть выполнено"
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;

    ТабДокумент.Вывести(ОбластьДанные2);
    //Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

    ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
    ОбластьДанные3.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьДанные3.Параметры.Колво = ВыборкаДетальныеЗаписи.Количество1;
    ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
    ОбластьДанные3.Параметры.Сумма = ВыборкаДетальныеЗаписи.Количество1*ВыборкаДетальныеЗаписи.Цена;

    ТабДокумент.Вывести(ОбластьДанные3);
    Конеццикла;
    КонецЦикла;
    КонецЦикла;
    Возврат ТабДокумент;
    КонецФункции
```

Как только не пробовал решать. В чем ошибка?
---
Решение:

```1c
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТзИнгридиенты = Новый ТаблицаЗначений();
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОтчетОРозничныхПродажахТовары.Цена КАК Цена,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.Ссылка КАК Номенклатура,
    | ПартииТоваровНаСкладах.СтатусПартии КАК СтатусПартии,
    | ЕСТЬNULL(ПартииТоваровНаСкладах.Количество, 0) КАК Количество1,
    | ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
    | ОтчетОРозничныхПродажахТовары.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    | ОтчетОРозничныхПродажахТовары.Сумма КАК Сумма
    |ИЗ
    | Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    | ПО ОтчетОРозничныхПродажахТовары.Ссылка = ПартииТоваровНаСкладах.Регистратор
    | И ОтчетОРозничныхПродажахТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
    |ГДЕ
    | ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка
    | И ПартииТоваровНаСкладах.Регистратор = &Ссылка
    |ИТОГИ
    | СУММА(Количество1),
    | СУММА((Цена - Цена * ПроцентСкидкиНаценки / 100) * Количество1) КАК Сумма
    |ПО
    | СтатусПартии,
    | НоменклатурнаяГруппа";

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();
    //Шапка
    ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
    Пока ВыборкаСтатус.Следующий() Цикл
    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
    ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
    ОбластьДанные1.Параметры.СтатусПартии =
    ?(ВыСтСтПа = "Купленный", "Продажи фирмы",
    ?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
    ТабДокумент.Вывести(ОбластьДанные1);
    //Группа
    ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");
    Пока ВыборкаГруппа.Следующий() Цикл
    ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
    ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
    //Итог
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Сумма;
    ТабДокумент.Вывести(ОбластьДанные2);
    //Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

    ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
    ОбластьДанные3.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьДанные3.Параметры.Колво = ВыборкаДетальныеЗаписи.Количество1;
    ЦенаСоСкидкой = ВыборкаДетальныеЗаписи.Цена * ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки/100;
    ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
    ОбластьДанные3.Параметры.Сумма = (ОбластьДанные3.Параметры.Цена - ЦенаСоСкидкой)*ВыборкаДетальныеЗаписи.Количество1;
    ТабДокумент.Вывести(ОбластьДанные3);
    Конеццикла;
    КонецЦикла;
    КонецЦикла;
    Возврат ТабДокумент;
    КонецФункции
```
---
Итог + ВыборкаГруппа.Количество1*ВыборкаГруппа.Цена;
Итог в этой фразе как определен?
---
Смотрите пост (7) там уже нет Итога
---
```1c
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТзИнгридиенты = Новый ТаблицаЗначений();
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОтчетОРозничныхПродажахТовары.Цена * ПроцентСкидкиНаценки / 100 КАК Цена,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.Ссылка КАК Номенклатура,
    | ПартииТоваровНаСкладах.СтатусПартии КАК СтатусПартии,
    | ЕСТЬNULL(ПартииТоваровНаСкладах.Количество, 0) КАК Количество1,
    | ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
    | ОтчетОРозничныхПродажахТовары.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    | ОтчетОРозничныхПродажахТовары.Сумма КАК Сумма
    |ИЗ
    | Документ.РеализацияТоваровУслуг.Товары КАК ОтчетОРозничныхПродажахТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    | ПО ОтчетОРозничныхПродажахТовары.Ссылка = ПартииТоваровНаСкладах.Регистратор
    | И ОтчетОРозничныхПродажахТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
    |ГДЕ
    | ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка
    |ИТОГИ
    | СУММА(Цена),
    | СУММА(Количество1),
    | СУММА(Количество),
    | СУММА(Сумма)
    |ПО
    | СтатусПартии,
    | НоменклатурнаяГруппа";

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();
    //Шапка
    ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
    Пока ВыборкаСтатус.Следующий() Цикл
    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
    ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
    ОбластьДанные1.Параметры.СтатусПартии =
    ?(ВыСтСтПа = "Купленный", "Продажи фирмы",
    ?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
    ТабДокумент.Вывести(ОбластьДанные1);
    //Группа
    ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");
    Пока ВыборкаГруппа.Следующий() Цикл
    ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
    ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
    //Итог
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Цена*ВыборкаГруппа.Количество1;

    ТабДокумент.Вывести(ОбластьДанные2);
    //Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

    ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
    ОбластьДанные3.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьДанные3.Параметры.Колво = ВыборкаДетальныеЗаписи.Количество1;
    ЦенаСоСкидкой = ВыборкаДетальныеЗаписи.Цена * ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки/100;
    ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
    ОбластьДанные3.Параметры.Сумма = (ОбластьДанные3.Параметры.Цена - ЦенаСоСкидкой)*ВыборкаДетальныеЗаписи.Количество1;
    ТабДокумент.Вывести(ОбластьДанные3);
    Конеццикла;
    КонецЦикла;
    КонецЦикла;
    Возврат ТабДокумент;
    КонецФункции
```
---
а отладчиком посмотреть не?
явно Количество1 будет NULL
Чтобы не валилось с красным крестом - обработайте NULL (в запросе, например, вот так можно:
```1c
    | ЕстьNULL(ПартииТоваровНаСкладах.Количество,0) КАК Количество1
```
)
А в данных сами уже смотрите, почему нет подходящих партий на остатках
---
Итоги по количеству есть.
Скорее всего ругается на Цену.
Добавьте ее в ИТОГИ.

```1c
    МАКСИМУМ(ОтчетОРозничныхПродажахТовары.Цена)
```

Вообще лучше расчеты данные в запросе произвести.
Сделайте поле Сумма. (Количество * Цена) сразу в запросе
---
```1c
    *ВыборкаГруппа.Цена
```
 вроде как не будет на этой группировке
---
точняк, на обход особо и не смотрел, а там еще не добрались до детальных записей
---
В конец секции запроса ВЫБРАТЬ добавить строку:

ВЫРАЗИТЬ(ПартииТоваровНаСкладах.Количество1*ОтчетОРозничныхПродажахТовары.Цена "ЧИСЛО(15,2)") КАК Сумма

Можно и без выразить, тут нет деления

в коде заменить строку:

ОбластьДанные2.Параметры.Итог = Итог + ВыборкаГруппа.Количество1*ВыборкаГруппа.Цена;

На строку:

ОбластьДанные2.Параметры.Итог = Итог + ?(ЗначениеЗаполнено(ВыборкаГруппа.Сумма), ВыборкаГруппа.Сумма, 0);
---
```1c
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТзИнгридиенты = Новый ТаблицаЗначений();
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОтчетОРозничныхПродажахТовары.Цена КАК Цена,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.Ссылка КАК Номенклатура,
    | ПартииТоваровНаСкладах.СтатусПартии КАК СтатусПартии,
    | ПартииТоваровНаСкладах.Количество КАК Количество1,
    | ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
    | ОтчетОРозничныхПродажахТовары.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    | ОтчетОРозничныхПродажахТовары.Сумма КАК Сумма
    |ИЗ
    | Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    | ПО ОтчетОРозничныхПродажахТовары.Ссылка = ПартииТоваровНаСкладах.Регистратор
    | И ОтчетОРозничныхПродажахТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
    |ГДЕ
    | ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка
    | И ПартииТоваровНаСкладах.Регистратор = &Ссылка
    |ИТОГИ
    | СУММА(Количество1),
    | СУММА(Сумма)
    |ПО
    | СтатусПартии,
    | НоменклатурнаяГруппа";

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();
    //Шапка
    ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
    Пока ВыборкаСтатус.Следующий() Цикл
    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
    ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
    ОбластьДанные1.Параметры.СтатусПартии =
    ?(ВыСтСтПа = "Купленный", "Продажи фирмы",
    ?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
    ТабДокумент.Вывести(ОбластьДанные1);
    //Группа
    ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");
    Пока ВыборкаГруппа.Следующий() Цикл
    ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
    ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
    //Итог
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;

    СчитаемЦену = ВыборкаГруппа.Цена * ВыборкаГруппа.ПроцентСкидкиНаценки/100;
    СчитаемСумму = СчитаемЦену*ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = СчитаемСумму;

    ТабДокумент.Вывести(ОбластьДанные2);
    //Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

    ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
    ОбластьДанные3.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьДанные3.Параметры.Колво = ВыборкаДетальныеЗаписи.Количество1;
    ЦенаСоСкидкой = ВыборкаДетальныеЗаписи.Цена * ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки/100;
    ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
    ОбластьДанные3.Параметры.Сумма = (ОбластьДанные3.Параметры.Цена - ЦенаСоСкидкой)*ВыборкаДетальныеЗаписи.Количество1;
    ТабДокумент.Вывести(ОбластьДанные3);
    Конеццикла;
    КонецЦикла;
    КонецЦикла;
    Возврат ТабДокумент;
    КонецФункции
```

Пробовал дописывать ЕСТЬNULL, всё равно ошибка "Преобразование значения к типу Число не может быть выполнено"

В случае:
Выводится на печать, но получаются космические цифры,
если добавить

```1c
    |ИТОГИ
    | СУММА(Цена),
    | СУММА(Количество1),
    | СУММА(ПроцентСкидкиНаценки),
    | СУММА(Сумма)
```

и

```1c
    СчитаемЦену = ВыборкаГруппа.Цена * ВыборкаГруппа.ПроцентСкидкиНаценки/100;
    СчитаемСумму = СчитаемЦену*ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = СчитаемСумму;
```

Ребят, в чем ошибаюсь?
---
Если цена и скидка у каждой группы одинаковая, то вместо СУММА используйте МАКСИМУМ например
---
У некоторой номенклатуры "ПроцентСкидкиНаценки" отсутствует, я так понимаю программа считает это значение равное "0"?
---
Просто, чтобы небыло данной ошибки цену и скидку нужно включить в итоги. Функцию СУММА для этих полей использовать нельзя, т.к. цена и скидка будет суммироваться. отсюда и большие числа. Можно использовать например МАКСИМУМ, тогда программа возьмет максимальное значение из группы. Если у какой то номенклатуры в группе скидка 0, то какой смысл ее считать в группе? Это будет неверный показатель
---
В ВыборкаДетальныеЗаписи все выражения считаются, а в ВыборкаГруппа, ошибка преобразования, можно ли как нибудь её обойти?
---
в любом случае можно поставить проверку перед тем какие либо делать операции с этими полями, лучше вначале проверить на тип поля Цена,Скидка и Количество. если хотя бы одно отличается от числа, то не считать сумму вовсе
---
В случае если

```1c
    |ИТОГИ
    | СУММА(Количество1),
    | СУММА(Сумма)
```

и

```1c
    //Итог
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
    //СчитаемЦену = ВыборкаГруппа.Цена * ВыборкаГруппа.ПроцентСкидкиНаценки/100;
    //СчитаемСумму = СчитаемЦену*ВыборкаГруппа.Количество1;
    //ОбластьДанные2.Параметры.СуммаИтог = СчитаемСумму;
    ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Сумма;
    ТабДокумент.Вывести(ОбластьДанные2);
```

Выводятся значения в принципе правильные, но нет разделения Суммы по виду продажи

```1c
    рис1. рис2.
```

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

```1c
    |ИТОГИ
    | СУММА(Количество1),
    | СУММА((Цена - ПроцентСкидкиНаценки / 100) * Количество1) КАК Сумма
```
---
да
---
ой не совсем: СУММА((Цена - Цена*ПроцентСкидкиНаценки / 100) * Количество1) КАК Сумма
---
а в выборке указывать я так понимаю

```1c
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Сумма;
```
---
да
---
Спасибо! Все работает! :)
---
ПартииТоваровНаСкладах.Количество КАК Количество1,

Сделайте так ЕСТЬNULL(ПартииТоваровНаСкладах.Количество КАК Количество1,0) Как Количество1
---
Очень долго бился с этим :)
---
Решение:

```1c
    Функция Печать() Экспорт

    ТабДокумент = Новый ТабличныйДокумент;
    ТзИнгридиенты = Новый ТаблицаЗначений();
    ТабДокумент = Новый ТабличныйДокумент;
    Макет = ПолучитьМакет("Макет");

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ОтчетОРозничныхПродажахТовары.Цена КАК Цена,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.НоменклатурнаяГруппа КАК НоменклатурнаяГруппа,
    | ОтчетОРозничныхПродажахТовары.Номенклатура.Ссылка КАК Номенклатура,
    | ПартииТоваровНаСкладах.СтатусПартии КАК СтатусПартии,
    | ЕСТЬNULL(ПартииТоваровНаСкладах.Количество, 0) КАК Количество1,
    | ОтчетОРозничныхПродажахТовары.Количество КАК Количество,
    | ОтчетОРозничныхПродажахТовары.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    | ОтчетОРозничныхПродажахТовары.Сумма КАК Сумма
    |ИЗ
    | Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    | ПО ОтчетОРозничныхПродажахТовары.Ссылка = ПартииТоваровНаСкладах.Регистратор
    | И ОтчетОРозничныхПродажахТовары.Номенклатура = ПартииТоваровНаСкладах.Номенклатура
    |ГДЕ
    | ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка
    | И ПартииТоваровНаСкладах.Регистратор = &Ссылка
    |ИТОГИ
    | СУММА(Количество1),
    | СУММА((Цена - Цена * ПроцентСкидкиНаценки / 100) * Количество1) КАК Сумма
    |ПО
    | СтатусПартии,
    | НоменклатурнаяГруппа";

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();
    //Шапка
    ВыборкаСтатус = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СтатусПартии");
    Пока ВыборкаСтатус.Следующий() Цикл
    ОбластьДанные1 = Макет.ПолучитьОбласть("Шапка");
    ВыСтСтПа = ВыборкаСтатус.СтатусПартии;
    ОбластьДанные1.Параметры.СтатусПартии =
    ?(ВыСтСтПа = "Купленный", "Продажи фирмы",
    ?(ВыСтСтПа = "На комиссию", "Комиссионные продажи" ,ВыСтСтПа));
    ТабДокумент.Вывести(ОбластьДанные1);
    //Группа
    ВыборкаГруппа = ВыборкаСтатус.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НоменклатурнаяГруппа");
    Пока ВыборкаГруппа.Следующий() Цикл
    ОбластьДанные2 = Макет.ПолучитьОбласть("Группа");
    ОбластьДанные2.Параметры.НоменклатурнаяГруппа = ВыборкаГруппа.НоменклатурнаяГруппа;
    //Итог
    ОбластьДанные2.Параметры.КолИтог = ВыборкаГруппа.Количество1;
    ОбластьДанные2.Параметры.СуммаИтог = ВыборкаГруппа.Сумма;
    ТабДокумент.Вывести(ОбластьДанные2);
    //Данные
    ВыборкаДетальныеЗаписи = ВыборкаГруппа.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

    ОбластьДанные3 = Макет.ПолучитьОбласть("Данные");
    ОбластьДанные3.Параметры.Номенклатура = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьДанные3.Параметры.Колво = ВыборкаДетальныеЗаписи.Количество1;
    ЦенаСоСкидкой = ВыборкаДетальныеЗаписи.Цена * ВыборкаДетальныеЗаписи.ПроцентСкидкиНаценки/100;
    ОбластьДанные3.Параметры.Цена = ВыборкаДетальныеЗаписи.Цена;
    ОбластьДанные3.Параметры.Сумма = (ОбластьДанные3.Параметры.Цена - ЦенаСоСкидкой)*ВыборкаДетальныеЗаписи.Количество1;
    ТабДокумент.Вывести(ОбластьДанные3);
    Конеццикла;
    КонецЦикла;
    КонецЦикла;
    Возврат ТабДокумент;
    КонецФункции
```
---
Так где была именно ошибка?
---
Уже точно не помню, по-моему ЕСТЬNULL() нужно было установить :)