нужна помощь с итогами

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. иванов2020 2 25.07.14 17:19 Сейчас в теме
Помогите с итогами.есть запрос выбирает отделение и услуги по фамилии.
Нужно сделать итоги как на безымянный3





Если ВидГраждан = Перечисления.РЦ_ВидГраждан.дляГражданРБ Тогда

Валюта=Константы.РЦ_НациональнаяВалюта.Получить();

ТД = Новый ТабличныйДокумент;
Макет = Отчеты.УслгиВОтделениях.ПолучитьМакет("УслугиОказанныеВОтделениях");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");

ТД.Вывести(ОбластьШапка);

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьЗаголовок.Параметры.Валюта = Валюта;
ОбластьЗаголовок.Параметры.ДатаС = "Период с:" + Формат (ЭтаФорма.ДатаС,"ДЛФ=DD");
ОбластьЗаголовок.Параметры.ДатаПо = " по:" + Формат (ЭтаФорма.ДатаПо,"ДЛФ=DD");
ТД.Вывести(ОбластьЗаголовок);

ОбластьГруппа = Макет.ПолучитьОбласть("Группа");
ОбластьГруппа1 = Макет.ПолучитьОбласть("Группа1");
ОбластьГруппа2 = Макет.ПолучитьОбласть("Группа2");
ОбластьИтого = Макет.ПолучитьОбласть("Итого");
ОбластьВсего = Макет.ПолучитьОбласть("Всего");

//Заполнение табличной части

ЗапросТаблица = Новый Запрос ();
ЗапросТаблица.Текст =

"ВЫБРАТЬ
| РЦ_ОказанныеУслугиОбороты.Договор.Номер КАК Номер,
| РЦ_ОказанныеУслугиОбороты.Пациент.Наименование КАК ФИО,
| РЦ_ОказанныеУслугиОбороты.Услуга КАК Услуга,
| ЕСТЬNULL(РЦ_ОказанныеУслугиОбороты.СуммаОборот, 0) КАК Сумма,
| РЦ_Отделения.Наименование КАК Наименование
|ИЗ
| РегистрНакопления.РЦ_ОказанныеУслуги.Обороты(&ДатаС, &ДатаПо, , ВидГраждан = &ВидГраждан) КАК РЦ_ОказанныеУслугиОбороты
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.РЦ_Отделения КАК РЦ_Отделения
| ПО РЦ_ОказанныеУслугиОбороты.Отделение = РЦ_Отделения.Ссылка
|ГДЕ
| ВЫБОР
| КОГДА &ОтделенияЗаполнены
| ТОГДА РЦ_Отделения.Ссылка В ИЕРАРХИИ (&Отделения)
| ИНАЧЕ ИСТИНА
| КОНЕЦ
|
|УПОРЯДОЧИТЬ ПО
| Наименование,
| ФИО";
ЗапросТаблица.УстановитьПараметр("Отделения",Отделения);
ЗапросТаблица.УстановитьПараметр("ДатаС", НачалоДня(ДатаС));
ЗапросТаблица.УстановитьПараметр("ДатаПо",КонецДня(ДатаПо));
ЗапросТаблица.УстановитьПараметр("ОтделенияЗаполнены", ЗначениеЗаполнено(Отделения));

Если ВидГраждан=Перечисления.РЦ_ВидГраждан.дляГражданРБ тогда
ЗапросТаблица.УстановитьПараметр("ВидГраждан",Перечисления.РЦ_ВидГраждан.дляГражданРБ);
КонецЕсли;

РезультатТаблица = ЗапросТаблица.Выполнить().Выгрузить();


РезультатТаблицаОтделение = Неопределено;
РезультатТаблицаФИО = Неопределено;
РезультатТаблицаИтог = Неопределено;
СуммаПоПациенту=0;

Для каждого СтрокаТаблица Из РезультатТаблица Цикл

Если РезультатТаблицаОтделение <> СтрокаТаблица.Наименование Тогда

ОбластьГруппа.Параметры.Наименование = СтрокаТаблица.Наименование;
ТД.Вывести(ОбластьГруппа);
РезультатТаблицаОтделение = СтрокаТаблица.Наименование;
КонецЕсли;
Если РезультатТаблицаФИО <> СтрокаТаблица.ФИО Тогда

ОбластьГруппа1.Параметры.ФИО = СтрокаТаблица.ФИО;
ТД.Вывести(ОбластьГруппа1);
РезультатТаблицаФИО = СтрокаТаблица.ФИО;

КонецЕсли;

ОбластьГруппа2.Параметры.Номер = СтрокаТаблица.Номер;
ОбластьГруппа2.Параметры.Услуга = СтрокаТаблица.Услуга;
ОбластьГруппа2.Параметры.Сумма = СтрокаТаблица.Сумма;
ТД.Вывести(ОбластьГруппа2);


КонецЦикла;
ТД.ОтображатьСетку = Ложь ;
ТД.Показать();

КонецЕсли;
Прикрепленные файлы:
По теме из базы знаний
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот