Печать на сетевые принтеры по протоколу IPP как напрямую, так и с иcпользованием сервера CUPS. Подсистема позволяет печатать из серверного, клиентского контекста, регламентных и фоновых заданий и не требует установки какого-то дополнительного ПО, библиотек и драйверов принтеров как на сервер 1С Предприятия, так и на клиента. Получение статуса принтера, информации о нем и результатов печати. Никаких внешних компонент не используется, под капотом HTTP и работа с двоичными данными средствами платформы. Сериализатор и десериализатор протокола IPP позволяет относительно легко доработать подсистему для поддержки нереализованных методов и типов данных протокола IPP.
Файлы
ВНИМАНИЕ:
Файлы из Базы знаний - это исходный код разработки.
Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы.
Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных.
Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Наименование
Скачано
Купить файл
По подписке PRO
Подсистема печати на сетевые принтеры по протоколу IPP без драйверов из любой ОС и серверного контекста
Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
0% комиссии — оплата напрямую исполнителю;
Исполнители любого масштаба — от отдельных специалистов до команд под проект;
Прямой обмен контактами между заказчиком и исполнителем;
Безопасная сделка — при необходимости;
Рейтинги, кейсы и прозрачная система откликов.
Реализация протокола IPP для бездрайверной печати на сетевые принтеры или на принтеры, подключенные с серверу CUPS.
Подсистема позволяет получить в своей конфигурации возможность печати из серверного или клиентского контекста, например, регламентных заданий без установки каких-то драйверов принтера в операционной системе.
Подсистема состоит из сериализатора протокола IPP и сервисной обработки, которая позволяет оперировать принтером IPP как объектом (получать его состояние, отправлять задания на печать и опрашивать возможности принтера).
В поставке находится демо конфигурация для демонстрации возможностей подсистемы и конфигурация для интеграции в свою конфигурацию.
Подсистема разрабатывалась и тестировалась на релизе платформы 8.3.21.1308. Режим совместимости 8.3.21. Но будет работать на любой версии платформы не ниже 8.3.17.
Обновление от 30.10.2023
1.Добавлена поддержка выбора лотков для печати.
2. Антон Гилин добавил поддержку печати через IIS (аналог CUPS, но на windows server). Его доработки добавлены в отдельную конфигурацию, которая также находится в архиве.
OpenPrinting CUPS
The current standards-based, open source printing system developed by OpenPrinting for Linux® and other Unix®-like operating systems. CUPS uses IPP Everywhere™ to support printing to local and network printers.
(1) Через CUPS да, но прямая печать сразу на сетевой принтер будет работать, но принтер должен поддерживать формат в котором Вы будете отправлять документ на печать. Например PDF. Вообще развернуть виртуалку с Linux+ CUPS не проблема т.к. один сервер может обслуживать все сетевые принтеры.
(3) сервер cups не обязательно ставить если принтер сетевой и поддерживает формат документа который вы будете отправлять на печать. Например все большие сетевые принтеры принимают pdf doc и jpeg. В общем cups это скорее расширение спектра поддерживаемых устройств печати
(5) Добрый день! Все тут изменения размера бумаги Вам сначала нужно опросить принтер и получить поддерживаемые им размеры бумаги с их описанием, а затем уже из доступных устанавливать значение атрибута "media". Посмотреть все атрибуты принтера можно поставив точку остановки в модуле объекта обработки ПринтерIPP, в процедуре "Инициализировать", на строке "ДанныеАтрибутовПринтера = ДанныеАтрибутовПринтера();". Этот вызов вернет структуру где будут данные которые вернул принтер, там все довольно интуитивно.
Добрый день!
Можете подсказать подойдет ли данная подсистема в нашем случае (примерно):
Есть принтер-аппликатор (сетевой), который на данный момент печатает с клиента. На принтере стоит камера с машинным зрением, распознающая штрих коды (шк) по которым в базе ищется этикетка и печатается. Получается это некий конвейер. Едет номенклатура, камера считывает шк и передает в 1с. 1с подбирает этикетки и передает на печать. Получается достаточно длинная внутренняя цепочка: клиент -> сервер -> клиент -> принтер. Выполняется она примерно за 4-5 секунд, что на ленте достаточно длительно. Хочется время уменьшить на 1-2 секунды.
Если правильно понял, то подсистема позволяет исключить из цепочки вторую отправку на клиента и принтер сразу получает задание от сервера. Правильно, же?