Прямая печать на принтерах TSC из 1С

19.02.24

Интеграция - Периферийные устройства

Прямая печать на принтерах TSC из 1С при вызове с сервера позволяет печатать из тонкого клиента, мобильного клиента и веб-клиента. Потребуется установка драйвера и библиотеки для отправки команд на этот драйвер.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Драйвер_Библиотеки_Обработка:
.zip 45,90Mb
14
14 Скачать (1 SM) Купить за 1 850 руб.

Необходимо было печатать этикетки на принтере TSC из 1С независимо от клиента (тонкий или мобильный), а это подразумевает разные операционные системы (windows/android/linux). Было принято решение, чтобы печать выполнял сервер, он на ОС Windows Server. Но просто печатать табличный документ из серверного вызова не представляется возможным. Немного изучив принтер, выяснилось, что у него есть свой язык для печати TSPL.

 

Язык TSPL

https://fs.tscprinters.com/en/dl/3/2541

Принято решение отправлять подготовленное задание на принтер в формате этого языка. У разработчика принтера есть уже готовые библиотеки, которые позволяют общаться с драйвером принтера.

Устанавливаем принтер на сервер, устанавливает библиотеки на сервер:

Установка библиотеки на х64

c:\Windows\Microsoft.NET\Framework64\v4.0.30319>RegAsm.exe /codebase E:\Distr\TSC\TSC_libnet\tsclibnet_x64.dll

 

 

Установка библиотеки на х32

c:\Windows\Microsoft.NET\Framework\v4.0.30319>RegAsm.exe /codebase E:\Distr\TSC\TSC_libnet\tsclibnet_x32.dll

 

 

На сайте разработчика принтера есть описание по работе с библиотекой. Можно отправлять как команды в формате языка TSPL, так и в существующие процедуры библиотеки

 

Работа с библиотекой

https://fs.tscprinters.com/en/dl/3/3357

Получилась простенькая обработка, которую можно задействовать в своих разработках:

 

 

Таким способом печать может быть осуществлена на сетевой принтер (LAN, WIFI), а также локальный по USB (что, наверное, не особо интересно).

Ниже код основной процедуры по печати на принтер TSC с сервера:

 

 

Итог, моментальная печать на принтере этикеток из любого вида клиента.

Тестировалось на платформе 1С:Предприятие 8.3 (8.3.23.1997)

TSC прямая печать этикетки windows

См. также

Периферийные устройства Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 Россия Абонемент ($m)

Пример работы для разработчика с оборудованием принтер чеков в рамках новейшей библиотеки подключаемого оборудования.

10 стартмани

14.11.2024    582    2    aximo    0    

3

Периферийные устройства Системный администратор Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Абонемент ($m)

Простая в использовании обработка https://infostart.ru/1c/tools/1001819/ в целом решает поставленную задачу, но имеет явный недостаток - взаимодействует только с принтерами, подключенными к серверу. Доработанная версия позволяет работать как с принтерами на клиенте, так и на сервере

1 стартмани

30.08.2024    424    3    Sergey1CSpb    0    

4

Периферийные устройства Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)

Расширение для вывода информации для покупателя из РМК на второй монитор. Также реализован вывод картинок из каталога в левую часть экрана покупателя. Разработано для УТ 11.5, УНФ 3.0.6 и 3.0.9.

1 стартмани

12.08.2024    1213    23    Rastopchinss    15    

3

Периферийные устройства Пользователь Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Вывод для клиента на второй монитор (информационное табло) номера заказа в браузер (по умолчанию, например, Яндекс). Внешняя обработка может быть легко переделана под другие конфигурации (нужды) даже начинающим программистом.

1 стартмани

02.08.2024    726    0    AlOkt    0    

5

Периферийные устройства Программист Пользователь Платформа 1С v8.3 1С:Розница 3.0 Абонемент ($m)

Пример работы с эмулятором дисплея покупателя через библиотеку БПО.

6 стартмани

10.07.2024    752    5    aximo    0    

3

Периферийные устройства Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Речь пойдет не о сканерах штрихкодов 2D/3D/RF/распознавании лиц и прочего, а о старом добром аппарате, позволяющем считать страницу и отправить ее образ в ПК через COM/USB порт. Рассмотрим, как можно подключить и использовать сканер в типовых 1С-конфигурациях. И что делать, если никак не найти команду настройки сканера.

1 стартмани

28.05.2024    1102    Sergey1CSpb    2    

7

Периферийные устройства Пользователь Платформа 1С v8.3 1С:Розница 2 Россия Абонемент ($m)

Расширение для 1С: Розница 2.3 версий 2.3.15.ХХХ и выше. Удобный способ изменения принтера по умолчанию во встроенной обработке печати ценников и этикеток. Только для операционной системы Windows.

1 стартмани

13.05.2024    1077    5    independ    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. volodya82 1 17.04.24 09:18 Сейчас в теме
Подскажите а где скачать tsclibnet.dll?
3. realslavyan 7 16.05.24 13:32 Сейчас в теме
(1) на сайте производителя https://emea.tscprinters.com/ru/zagruzki или в подкрепленном к статье архиве
2. volodya82 1 18.04.24 11:25 Сейчас в теме
Ошибка при вызове конструктора (COMОбъект)
{ВнешняяОбработка.ПринтерTSC.Форма.Форма.Форма(24)}:COMОбъект = Новый COMОбъект("TSCSDK.driver");
{ВнешняяОбработка.ПринтерTSC.Форма.Форма.Форма(11)}:ПечатьНаПринтереTSCНаСервере(СтруктураПараметров);

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
по причине:
Unknown error 0x80131700

В чем может быть проблема?
4. sleemp 8 16.05.24 13:53 Сейчас в теме
В мобильном приложении взлетит?
5. realslavyan 7 16.05.24 14:12 Сейчас в теме
(4) Да, конечно, ведь печать на принтер отправляет сам сервер, а не клиент. Собственно поэтому и нужно ставить принтер с драйвером на сервер и библиотеку через которую в драйвер отправляется код TSPL.
6. volodya82 1 22.05.24 16:38 Сейчас в теме
sendcommand QRCODE не хочет работать с кириллицей, не подскажете что можно сделать?
Результат сканирования QR кода: "3118*���� (1 ��)*1000*5194*10042024*0000-015979*26.04.2024**10102024"
Оставьте свое сообщение