Задача при выборе пользователем "сразу на принтер" из комплекта документов договор заполненный по шаблону печатать двусторонней печатью. На рабочем месте пользователя создал клон принтера с включенной по умолчанию двусторонней печатью. В конфигураторе создан справочник с данными Пользователь/имя принтера/ макет. по которому определяю куда отправлять какой макет из общей пачки. Если с табличным документом все понятно то используя PrintOut() нет возможности указать активный принтер. Может кому то сэкономлю время.
ТекущийПринтерПоУмолчанию = ДокументВорд.Application.ActivePrinter; // сохраняем текущий принтер по умолчанию
ПринтерДляПечати = ПолучитьСпецПринтерПользователя(ИмяМакета); // получаем нужный
// тут проверить получено ли имя принтера из справочника
ДокументВорд.Application.ActivePrinter = ПринтерДляПечати ; //делаем его активным
ДокументВорд.Application.PrintOut(0, 0, 0, "", "", "", 0, 1);
ДокументВорд.Application.ActivePrinter = ТекущийПринтерПоУмолчанию; // Возвращаем пользователю все как было
Показать