PDA

Просмотр полной версии : 1C 8.2 Предприятие.



YArostBEzPO4vu
12.11.2013, 21:59
Привет, и сразу к делу. Подруга попросила помочь с заданием на данную тему, оное заключается в том, что нужно сделать несложную конфу, в которую вбить справочники (Номенклатура, Агент, Фирма, ЕдиницыИзмерения), из них сформировать документ приход, в котором выводить итог по полю "Сумма". Ну с этим я справился, итог выводил через подвал. И еще нужно было сделать печатную форму для этого документа. Ее я сделал через макет, но как вывести итог, кроме как дописав код в создавшуюся процедуру, не пойму. Вот код:

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

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
Шапка = Макет.ПолучитьОбласть("Шапка");
ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка");
ОбластьТовары = Макет.ПолучитьОбласть("Товары");
Подвал = Макет.ПолучитьОбласть("Подвал");

ТабДок.Очистить();

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

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

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

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

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

ВставлятьРазделительСтран иц = Истина;
КонецЦикла;
//}}
КонецПроцедуры

Очень прошу помочь, не думаю, что у вас займет это много времени, всем добра :drinks: