//************************************
Процедура ПечатьПоКатегориям()
Перем Запрос,ТекстЗапроса, Таб;
Времяначало= ТекущееВремя();
СписокТоваров=СоздатьОбъект("СписокЗначений");
СписокКлиентов=СоздатьОбъект("СписокЗначений");
СС=СоздатьОбъект("СписокЗначений");
ФормированиеСписка(СписокТоваров,"Номенклатура","КатегорииТоваров",ВыбТовар,КатТоваров,МФВыбТовары,МФКатТоваров);
ФормированиеСписка(СписокКлиентов,"Контрагенты","КатегорииКонтрагентов",ВыбКлиент,КатКлиентов,МФВыбКлиенты,МФКатКлиентов);
Запрос = СоздатьОбъект("Запрос");
ТекстПеременных =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Фирма = Регистр.ПартииТоваров.Фирма;
|Товар = Регистр.ПартииТоваров.Товар;
|Контрагент= Регистр.ПартииТоваров.Контрагент;
|ТекДокумент = Регистр.ПартииТоваров.ТекущийДокумент;
|Вес = Регистр.ПартииТоваров.Товар.Вес;
|Нетто = Регистр.ПартииТоваров.Товар.Нетто;
|Категория = Регистр.ПартииТоваров.Товар.КатегорияДляГруппировки;
|Количество = Регистр.ПартииТоваров.ОстатокТовара;
|Оборот = Регистр.ПартииТоваров.Оборот;
|";
ТекстФункций = "
|Функция КолРасход = Расход(Количество);
|Функция Сумма = Сумма(Оборот);
|Функция ВесРасход = Сумма(Запрос.КолРасход * Вес + Количество - Количество);
|Функция НеттоРасход = Сумма(Запрос.КолРасход * Нетто + Количество - Количество);
|";
ТекстГруппировок = "
|Группировка Категория без групп упорядочить по Категория.Наименование;
|";
ТекстУсловий = "
|Условие(Фирма = ВыбФирма);
|Условие(Товар в СписокТоваров);
|Условие(Контрагент в СписокКлиентов) ;
|Условие(ПустоеЗначение(Контрагент)=0);
|"//}}ЗАПРОС
;
ТекстЗапроса = ТекстПеременных+РазделительСтрок+ТекстФункций+РазделительСтрок+ТекстГруппировок+РазделительСтрок+ТекстУсловий;
Запрос = СоздатьОбъект("Запрос");
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("проба");
// Заполнение полей "Заголовок"
Таб.ВывестиСекцию("Заголовок");
Состояние("Заполнение выходной таблицы...");
Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
// посщитаем кол-во клиентов
Запрос.ВНачалоВыборки();
Пока Запрос.Группировка(1) = 1 Цикл
Док=Запрос.ТекДокумент;
Если Док.Вид()="РасходнаяНакладная" Тогда
Если Док.ВидОперации=0 Тогда
КонецЕсли;
КонецЕсли;
Если Док.Вид()="ПриходнаяНакладная" Тогда
Если Док.ВидОперации=1 Тогда
КонецЕсли;
КонецЕсли;
Таб.ВывестиСекцию("КатегорияТовара");
КонецЦикла;
// Заполнение полей "Итого"
Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Сформировать по категории товара", "");
КонецПроцедуры
//****************************************************************
Мне нужно выбрать сумму и колворасход из расходной накладной без возврата поставщику и из приходной без возврата покупателя, так как форма док едина. Я уже не знаю, что делать. Вариант указать Док.ВидОперации, но что-то по незнанию не получается. Подскажите пожалуйста.