Как настроить печать этикеток в 1С:УТ 11 по рабочим местам без постоянного выбора принтера

Программист 1С v8.3 (Управляемые формы) Управленческий учет Торговля и дистрибуция
← На главную

При работе в многопользовательском режиме в 1С:Управление торговлей 11.5 часто возникает ситуация, когда на разных рабочих местах установлены разные модели принтеров этикеток (например, Zebra GK420d, 2844 или XP-365B). Основная сложность заключается в том, что стандартные механизмы 1С часто хранят параметры печати либо в самом шаблоне этикетки, либо в локальном кэше пользователя, что приводит к необходимости постоянно выбирать принтер и настраивать поля при каждой печати. Рассмотрим подробные способы решения этой задачи, от типовых настроек до небольших доработок системы.

Решение 1: Использование подключаемого оборудования и индивидуальных шаблонов

Проанализируем наиболее надежный типовой способ, который позволяет жестко закрепить настройки печати за конкретным рабочим местом. Для этого нам необходимо задействовать библиотеку подключаемого оборудования (БПО).

  1. Регистрация оборудования: На каждом локальном компьютере перейдем в раздел Администрирование — Подключаемое оборудование. Добавим новый экземпляр с типом «Принтеры этикеток». Важно выбрать правильный драйвер (например, «1С:Принтер этикеток» или «Гексагон»). При настройке обязательно укажем конкретный Windows-принтер, установленный в системе.
  2. Привязка к рабочему месту: В 1С каждое «Рабочее место» (справочник РабочиеМеста) уникально для связки «Имя компьютера + Пользователь ОС». Убедимся, что принтер привязан именно к текущему рабочему месту.
  3. Создание шаблонов: В справочнике Шаблоны этикеток и ценников создадим основной макет. Если принтеры на рабочих местах имеют разные характеристики (например, разное разрешение печати 203 dpi или 300 dpi), нам потребуется создать копии этого шаблона для каждого рабочего места.
  4. Настройка параметров: Откроем каждый шаблон на конкретном рабочем месте, перейдем в параметры страницы и установим нужный принтер, формат бумаги и поля. Система сохранит эти настройки в привязке к идентификатору шаблона.

Этот метод позволяет добиться того, что при нажатии кнопки «Печать» в обработке Печать этикеток и ценников, 1С будет автоматически подставлять принтер, указанный в параметрах выбранного шаблона. Для настройки такой схемы без типовых ошибок конфигурации можно применить расширение для печати этикеток в УТ 11.5 через БПО.

Решение 2: Использование типа шаблона для «Принтера этикеток»

Выясним причину, по которой многие пользователи не видят свои принтеры в списке доступных устройств. В современных версиях УТ 11 существует два принципиально разных типа шаблонов:

Если мы используем драйвер (например, Гексагон), нам следует выбирать второй тип шаблона. В этом случае в обработке печати при выборе оборудования система будет обращаться напрямую к устройству, минуя диалоговое окно настроек печати Windows. Это самый быстрый способ печати «в один клик». Для реализации такой задачи можно использовать расширение для печати этикеток в командном режиме.

Решение 3: Унификация имен принтеров в операционной системе

Рассмотрим «хитрость», которая часто применяется системными администраторами для обхода ограничений платформы без программирования. Если во всей организации используется один и тот же формат этикетки, можно сделать следующее:

  1. На каждом компьютере в панели управления Windows переименуем принтер этикеток в одно и то же строго определенное имя, например, LabelPrinter.
  2. В 1С в единственном шаблоне этикетки один раз настроим печать на принтер с именем LabelPrinter.
  3. Поскольку для 1С имя принтера во всех сессиях будет звучать одинаково, она будет отправлять задание на локальное устройство под этим именем, не требуя перенастройки параметров страницы для каждого пользователя.

Важно: Этот метод плохо работает в среде RDP (удаленный рабочий стол), если принтеры пробрасываются с динамическими именами типа «Zebra (redirected 2)». В случае RDP рекомендуется использовать только первый способ через подключаемое оборудование.

Решение 4: Создание регистра настроек (вариант для программиста)

Если типовых средств недостаточно или параметров слишком много, проанализируем ситуацию с точки зрения доработки конфигурации. Мы можем создать новый регистр сведений НастройкиПечатиПоРабочимМестам со следующей структурой:

При открытии формы печати или перед выводом на печать, мы можем программно подменять параметры принтера. Пример логики кода в расширении для обработки ПечатьЭтикетокИЦенников:


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

Такой подход позволяет один раз настроить все принтеры для всех пользователей централизованно, и настройки не будут «слетать» при очистке кэша или обновлении платформы.

Особенности работы в Тонком клиенте

Посмотрим на нюансы кэширования. В Тонком клиенте настройки печати (имя принтера, количество копий, ориентация) сохраняются в локальном файле профиля пользователя на компьютере. Если пользователь заходит с другого ПК, настройки могут не подтянуться. Именно поэтому использование Подключаемого оборудования является приоритетным — в этом случае настройки хранятся в базе данных 1С и привязаны к справочнику рабочих мест, что делает систему гораздо стабильнее.

Подводя итог, для реализации печати «одной кнопкой» в УТ 11 рекомендуется сначала настроить принтеры как подключаемое оборудование, а в случае специфических требований — воспользоваться методом создания копий шаблонов под конкретные физические устройства.

← На главную