Пример простой внешней обработки "Печать упаковочного листа"
//Код модуля формы
&НаСервере
Процедура ПриОткрытииНаСервере()
Объект.Дата = ТекущаяДата();
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПриОткрытииНаСервере();
КонецПроцедуры
&НаСервере
функция ПечатьНаСервере()
Табдок = Новый ТабличныйДокумент;
ОбъектВнешнейОбработки = РеквизитФормыВЗначение("Объект");
Макет = ОбъектВнешнейОбработки.ПолучитьМакет("УпаковочныйЛист");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьШапка.Параметры.Дата = Объект.Дата;
Табдок.Вывести(ОбластьШапка);
ОбластьСтрока = Макет.ПолучитьОБласть("Строка");
Для каждого строка из Объект.Товары цикл
ОбластьСтрока.параметры.Номенклатура = строка.Номенклатура.Наименование;
ОбластьСтрока.параметры.Количество = строка.Количество;
Табдок.Вывести(ОбластьСтрока);
КонецЦикла;
Возврат табдок;
КонецФункции
&НаКлиенте
Процедура Печать(Команда)
Объект.Результат.Напечатать();
КонецПроцедуры
&НаКлиенте
Процедура ТоварыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
Объект.Результат = ПечатьНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ТоварыПриИзменении(Элемент)
Объект.Результат = ПечатьНаСервере();
КонецПроцедуры
//Код модуля объекта
&НаСервере
Процедура ПриОткрытииНаСервере()
Объект.Дата = ТекущаяДата();
КонецПроцедуры
&НаКлиенте
Процедура ПриОткрытии(Отказ)
ПриОткрытииНаСервере();
КонецПроцедуры
&НаСервере
функция ПечатьНаСервере()
Табдок = Новый ТабличныйДокумент;
ОбъектВнешнейОбработки = РеквизитФормыВЗначение("Объект");
Макет = ОбъектВнешнейОбработки.ПолучитьМакет("УпаковочныйЛист");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьШапка.Параметры.Дата = Объект.Дата;
Табдок.Вывести(ОбластьШапка);
ОбластьСтрока = Макет.ПолучитьОБласть("Строка");
Для каждого строка из Объект.Товары цикл
ОбластьСтрока.параметры.Номенклатура = строка.Номенклатура.Наименование;
ОбластьСтрока.параметры.Количество = строка.Количество;
Табдок.Вывести(ОбластьСтрока);
КонецЦикла;
Возврат табдок;
КонецФункции
&НаКлиенте
Процедура Печать(Команда)
Объект.Результат.Напечатать();
КонецПроцедуры
&НаКлиенте
Процедура ТоварыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
Объект.Результат = ПечатьНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура ТоварыПриИзменении(Элемент)
Объект.Результат = ПечатьНаСервере();
КонецПроцедуры
Скачать