В начало

Добавление области ВсегоПоДокументу

 

Процедура ОбработкаПроведения(Отказ, Режим)
	//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
	// Данный фрагмент построен конструктором.
	// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

	// регистр ОстаткиМатериалов Расход
	Движения.ОстаткиМатериалов.Записывать = Истина;
	Для Каждого ТекСтрокаПереченьНоменклатуры Из ПереченьНоменклатуры Цикл
		Движение = Движения.ОстаткиМатериалов.Добавить();
		Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
		Движение.Период = Дата;
		Движение.Материал = ТекСтрокаПереченьНоменклатуры.Номенклатура;
		Движение.Склад = Склад;
		Движение.Количество = ТекСтрокаПереченьНоменклатуры.Количество;
	КонецЦикла;

	//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
КонецПроцедуры

Рис.1. Макет документа ОказаниеУслуги

 

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

	ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
	Шапка = Макет.ПолучитьОбласть("Шапка");
	ОбластьПереченьНоменклатурыШапка = Макет.ПолучитьОбласть("ПереченьНоменклатурыШапка");
	ОбластьПереченьНоменклатуры = Макет.ПолучитьОбласть("ПереченьНоменклатуры");
	ОбластьИтог=Макет.ПолучитьОбласть("Всего");//Добавлено мной
	ТабДок.Очистить();

	ВставлятьРазделительСтраниц = Ложь;
	Пока Выборка.Следующий() Цикл
		Если ВставлятьРазделительСтраниц Тогда
			ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
		КонецЕсли;

		ТабДок.Вывести(ОбластьЗаголовок);

		Шапка.Параметры.Заполнить(Выборка);
		ТабДок.Вывести(Шапка, Выборка.Уровень());

		ТабДок.Вывести(ОбластьПереченьНоменклатурыШапка);
		ВыборкаПереченьНоменклатуры = Выборка.ПереченьНоменклатуры.Выбрать();
		СуммаИтог=0;//Добавлено мной
		Пока ВыборкаПереченьНоменклатуры.Следующий() Цикл
			ОбластьПереченьНоменклатуры.Параметры.Заполнить(ВыборкаПереченьНоменклатуры);
			ТабДок.Вывести(ОбластьПереченьНоменклатуры, ВыборкаПереченьНоменклатуры.Уровень());
			СуммаИтог=СуммаИтог+ВыборкаПереченьНоменклатуры.Сумма;//Добавлено мной
		КонецЦикла;

		ОбластьИтог.Параметры.ВсегоПоДокументу=СуммаИтог;//Добавлено мной
		ТабДок.Вывести(ОбластьИтог);//Добавлено мной
		
		ВставлятьРазделительСтраниц = Истина;
	КонецЦикла;
	//}}
КонецПроцедуры

Рис.2. Модуль менеджера документа ОказаниеУслуги

Печатная форма документа ОказаниеУслуги с выводом области ВсегоПоДокументу

Рис.3. Печатная форма документа ОказаниеУслуги с выводом области ВсегоПоДокументу