// Создаем запрос по базе данных
ТекстЗапроса="
|Период с ДатН по ДатК;
|Пок = Операция.Субконто.Контрагент;
|Сум = Операция.Сумма;
|Сч = Операция.Счет;
|Функция СумСНК = СНК(Сум) когда (Сч=СчетПоКоду(""62""));
|Функция СумСНД = СНД(Сум) когда (Сч=СчетПоКоду(""62""));
|Функция СумКО = КО(Сум) когда (Сч=СчетПоКоду(""62""));
// Нас интересуют кредитовые
|Функция СумДО = ДО(Сум) когда (Сч=СчетПоКоду(""62""));
// и дебетовые обороты
|Функция СумСКК = СКК(Сум) когда (Сч=СчетПоКоду(""62""));
|Функция СумСКД = СКД(Сум) когда (Сч=СчетПоКоду(""62""));
|Условие (Сч=СчетПоКоду(""62""));
// Другие чтоб не лезли... Если не поставить - в отчет
// Поставщики попадут с нулями
|Группировка Пок упорядочить по Пок.Наименование без Групп;";
Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда
Сообщить("Запрос не выполнен");
Возврат;
КонецЕсли;
ИтНачК=0;
ИтНачД=0;
ИтИзмК=0;
ИтИзмД=0;
ИтКонК=0;
ИтКонД=0;
// Это переменные для итога
Таб=СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("");
Таб.ВывестиСекцию("Шапка");
Пока Запрос.Группировка(1)=1 Цикл
Клн=Запрос.Пок;
НачК=Запрос.СумСНК;
НачД=Запрос.СумСНД;
ИзмК=Запрос.СумКО;
ИзмД=Запрос.СумДО;
КонК=Запрос.СумСКК;
КонД=Запрос.СумСКД;
// Получаем разные сальдо и обороты...
ИтНачК=ИтНачК+НачК;
ИтНачД=ИтНачД+НачД;
ИтИзмК=ИтИзмК+ИзмК;
ИтКонД=ИтКонД+КонД;
ИтКонК=ИтКонК+КонК;
ИтИзмД=ИтИзмД+ИзмД;
// Складываем для окончательного итога
Таб.ВывестиСекцию("Строка");