Интеграция с барменом
  • 20 Feb 2024
  • 3 Минуты для чтения
  • Авторы

Интеграция с барменом


Вводный текст

Bartender расширяет функциональность печати в приложениях Tulip.

:::(Info) ()Загрузите юнит-тест Bartender из библиотеки Tulip.:::

Bartender от Seagull Scientific - это ведущий в отрасли клиент печати, который широко используется в производственном мире в качестве интерфейсного слоя между ERP/MES-решениями и постоянно расширяющимся списком принтеров, сетевых конфигураций и прочего.

Вкратце, Bartender управляет принтерной стороной этого уравнения и открывает конечные точки API, которые функции коннектора Tulip могут использовать для печати документов. В этом документе мы рассмотрим эту интеграцию.

Сетевые соображения

Клиент Bartender обычно размещается на сервере (или компьютере) в интернет-сети вашего предприятия. Обычно к нему нет доступа из внешних систем. Поскольку Tulip работает в облаке, нам нужно открыть доступ к вашему экземпляру Bartender в облаке.

Для этого есть несколько способов:

  1. В качестве туннеля в вашу сеть может выступать хост On-Prem Connector. Процесс настройки этих коннекторов может быть немного сложным и, вероятно, потребует поддержки со стороны вашей ИТ-команды.
  2. Устройство Tulip Edge, подключенное к вашей сети, может выступать в качестве узла коннектора в вашей сети. Это, безусловно, самый простой способ создания туннеля, и для его настройки не потребуется помощь ИТ-специалистов. Edge MC можно приобрести за 150 долларов.
  3. Можно создать SSH-туннель для доступа к экземпляру bartender. Это наиболее технически сложный вариант, и для его создания почти наверняка потребуется помощь ИТ-отдела. Этот вид туннеля не имеет встроенных средств защиты, как решение, разработанное Tulip.

Кроме того, мы будем использовать портал печати, предлагаемый Bartender. Он доступен только в планах "Автоматизация" и "Предприятие".

Настройка

:::(Info) (ПРИМЕЧАНИЕ) Эта процедура была создана как часть первоначального исследования интеграции с Bartender, функции, представленные в приложении для модульного тестирования, могут немного отличаться. :::

Конфигурация ярлыка в Bartender

В Bartender я создал пример ярлыка под названием Label Example.btw, этот документ доступен для скачивания (прикреплен внизу статьи). Важной настройкой является обеспечение того, чтобы каждое динамическое поле на вашей этикетке было привязано к входу на вашей шаблонной форме. В данном случае я также переименовал эти поля ввода, чтобы наши ключи при использовании ярлыка в Tulip были более интуитивно понятны.

Наконец, я записал IP-адрес моего сервера Bartender.

Когда Bartender настроен, вы должны иметь доступ к порталу печати с любой машины в той же сети по адресу:

http://[ip сервера]/bartender.

Я настоятельно рекомендую протестировать вашу форму из портала печати, чтобы убедиться, что ваш экземпляр Bartender настроен правильно.

Конфигурация тюльпана

Примечание: В этом примере я буду использовать Edge MC в качестве хоста коннектора.

  1. Подключите свой Edge MC к сети
  2. Перейдите в конфигурацию коннектора

  1. Установите в поле "Running on" значение Connector host вашего Edge MC.

  1. Установите Host на IP вашего сервера Bartender Server

  1. Установите порт на "5160", как указано на сервере Bartender Server.

Функции коннектора

Для печати в Bartender требуется пять функций коннектора:

  1. Получите список папок в экземпляре Bartender. Выберите папку, из которой вы хотите печатать.
  2. Получите список принтеров и выберите принтер, на который вы хотите распечатать.
  3. Получите список файлов в нужной папке. Выберите файл, который нужно распечатать.
  4. Сделайте запрос к конечной точке печати, который вернет идентификатор запроса.
  5. Передайте принтер, путь к ярлыку, идентификатор запроса и

:::(Info) (ПРИМЕЧАНИЕ) Принтеры, папки и документы (1, 2 и 3 выше) не изменятся, если не изменится конфигурация Bartender. Они могут быть установлены статически в ваших производственных приложениях:

Получить папки

Входы: Примечание

Выходные данные: Список папок в вашем экземпляре Bartender. Каждая папка имеет 3 атрибута:

  • Уникальный идентификатор
  • Имя
  • Путь - если эта папка находится внутри других папок, то это будет путь к ней.

Получить принтеры

Входные данные: Примечание

Выходные данные: Список принтеров, настроенных в вашем экземпляре Bartender.

Получить элементы папки

Входы: Уникальный идентификатор папки, полученный из функции Get Folders.

Выходные данные: Список имен всех файлов в этой папке и абсолютный путь к ней.

Получить идентификатор запроса

Входы: Имя принтера, абсолютный путь к файлу (путь к папке + имя файла) и уникальный идентификатор папки (из функции Get Folders).

Выходные данные: Текстовое значение, этот идентификатор ответа будет использоваться при печати.

:::(Info) (ПРИМЕЧАНИЕ) Эту функцию необходимо вызывать каждый раз, когда выполняется печать. Уникальный идентификатор печати необходим для каждого задания печати. :::

Печать

Входы: Имя принтера, абсолютный путь к файлу (путь к папке + имя файла) и уникальный идентификатор папки (из функции Get Folders), идентификатор ответа (из Get RequestID) и любые динамические поля в этикетке.

Выходные данные: Текстовое значение, указывающее на успешность печати.

:::(Info) (ПРИМЕЧАНИЕ) Динамические поля в этой метке должны соответствовать полям в конфигурации метки в Bartender. Пример функции Print настроен на работу с файлом Label Example.btw, который поставляется вместе с Library Unit Test. :::


Была ли эта статья полезной?