драйвера для промышленных принтеров этикеток и чеков ((проект открытых драйверов))

Полезные советы и программы от пользователей нашего форума.

Модератор: Модераторы разделов

elw00d
Сообщения: 3

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение elw00d »

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

По поводу setVerticalPosition, это функция 0x1D 0x24 nL nH она описана в руководстве к PP6k7k. Приложу руководство, может и вам пригодится, раз у вас были проблемы с posiflex'ами.
Функция эта на 32 странице там.
Вложения
PP6K7K_Command_Details_B.pdf
(304.77 КБ) 261 скачивание
Спасибо сказали:
Аватара пользователя
Ruslan Popov
Сообщения: 106
ОС: Ubuntu 10
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Ruslan Popov »

Организовал в программе считывание состояния принтера. Открываю крышку - всё нормально, пишет закрой крышку, пауза активна. Закрываю, начинает мигать зелёным глазом, статус пишет только про паузу.

Правильно я понимаю, что надо снять принтер с паузы? Или надо сделать что-то ещё?

Я про Zebra GK420d под ZPL II.

P.S. Ещё вопрос. Заметил, что повторное указание ^GB убирает предыдущее определение. Указание же вывести штрихкод вообще убирает нарисованные ранее линии из чека. Как быть?
Ubuntu Linux powered by Python/Django.
Мои проекты на GitHub.
Спасибо сказали:
Аватара пользователя
Ruslan Popov
Сообщения: 106
ОС: Ubuntu 10
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Ruslan Popov »

Denjs писал(а):
20.01.2011 12:31
В приложении - класс модуля принтера для gk420d созданный на рождественских каникулах - "t_labelprinter_zebra_gk420d". там основные операции и подборка команд с описаниями - возможно будет полезно.

Набросал питонский модуль, который может считывать состояние.
Через него печатаю уведомления, картинку приложил.
Не могу понять, как привести принтер в чувство (сброс не считается), после замены ленты.

Рекламный ролик принтера
Вложения
zebra_labels.jpeg
printer.py.gz
(1003 байт) 134 скачивания
Ubuntu Linux powered by Python/Django.
Мои проекты на GitHub.
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Привет Камрады!

Готовлю к запуску пиццерию. В качестве операционки Ubuntu, в качестве кассовой/учетной Opentpv (закончу русификацию - выложу локаль), в качестве принетара чеков/рецептов на кухню: CITIZEN CT-S280.

С последним проблемы.

CUPS Дрова с горем пополам скомпилил. Будущим поколениям на заметку:

1. Для установки дров идем сюда:http://www.citizen-systems.co.jp/support/download/printer/driver/cups/index.html - курим. Спотыкаемся на компиляции. Потому перед выполнением команды: gcc -Wl,-rpath,/usr/lib -Wall -fPIC -O2 -o rastertocbm1k rastertocbm1k.c -lcupsimage -lcups устанавливаем нужные библиотеки:

Код: Выделить всё

sudo apt-get install libcups2-dev libcupsimage2-dev

далее компилируем и копируем все как написано.

2. Запускаем установку и снова спотыкаемся на этапе подключения принтера через USB serial converter. Поскольку в текущем ядре уже есть модуль для этого девайса просто пишем

Код: Выделить всё

sudo modprobe ftdi_sio vendor=0x2730 product=0x1000

Останавливаем cupsd и редактируем

Код: Выделить всё

sudo gedit /etc/cups/printers.conf

где указываем что устройство у нас для принтера /dev/ttyUSB0 вместо /dev/ttyS0 и снова стартуем CUPSD

после этого ставится принтер и даже печатает с командной строки (cat test.txt > /dev/ttyUSB0 по крайней мере латинскими, кириллицу пока тоже не выдает) НО.. но не печатает тестовую страницу и из программ. Пишет что неудается открыть файл устройства /dev/ttyUSB0 : Permission denied.

chmod 666 /dev/ttyUSB0
и
chgrp lp /dev/ttyUSB0

не помогли.

Прошу помощи в настройке.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

Отметьте пожалуйста в тексте сообщения жирненьким, что вы говорите о CUPS-двайверах.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
Аватара пользователя
Ruslan Popov
Сообщения: 106
ОС: Ubuntu 10
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Ruslan Popov »

ipadm писал(а):
13.02.2011 16:52
Пишет что неудается открыть файл устройства /dev/ttyUSB0 : Permission denied.

chmod 666 /dev/ttyUSB0
и
chgrp lp /dev/ttyUSB0

не помогли.

Прошу помощи в настройке.

Обратите внимание на последовательность действий в моём питонском коде. Это неспроста.
Ubuntu Linux powered by Python/Django.
Мои проекты на GitHub.
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Ruslan Popov писал(а):
13.02.2011 18:52
Это неспроста.



Вероятно так оно и есть, только вот я Пайтоном только планирую заняться. Потому мне трудно понять что в коде Вашем за порядок. Может Вы мне в bash растолкуете?

Заранее благодарен.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

2 Ruslan Popov
вы говорите про код ориентированый то-ли на косяки питона, то ли на косяки драйвера для профиля "USB Printer" ( устройство /dev/usplp0 ) . А в данном случае ipadm говорит о проблемах доступа к устройству создаваемому для профиля "USB Serial Port" (/dev/ttyUSB0 ). Тем более в условиях когда править исходники - не выход. Как я понимаю, ipadm собиратся использвоать CUPS-драйвера. Не знаю каков у него уровень и профиль разработчика, но думается мне - разработка CUPS драйверов или драйвера для USB - дело не простое. Я бы вот не взялся просто так...

2 ipadm
>> chgrp lp /dev/ttyUSB0
Вообще-то, надо пользователя включать в группу которая имеет доступ к ресурсу, а никак не наоборот.
Я бы вернул все взад как было.

У вас процессы cups под каким пользователем запускается? этот пользователь в каких группах состоит?
с "sudo modprobe ftdi_sio" вы точно ничего не напутали?
Что говорит ситизендовская поддержка? что говорит поставщик вашего шнурка com2usb?

ну или вы можете начать исправлять исходники модуля CUPS в том стиле - как говорит Ruslan Popov. У него проблема была в том, что не получается открыть /dev/usblp0 одновременно на чтение и запись. - чей это косяк (питон или драйвер) мне вот правда сейчас не понятно.

Или вы должны научиться работать с устройством напрямую.
Или мы можем договориться об адаптации драйверов OTPD под вашу модель принтера - это если вы находитесь в Москве.

В последних 2-х случаях вам надо будет адаптировать программу, из которой вы осуществляете печать.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
Аватара пользователя
Ruslan Popov
Сообщения: 106
ОС: Ubuntu 10
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Ruslan Popov »

Denjs писал(а):
13.02.2011 21:03
2 ipadm
>> chgrp lp /dev/ttyUSB0
Вообще-то, надо пользователя включать в группу которая имеет доступ к ресурсу, а никак не наоборот.
Я бы вернул все взад как было.

Подписываюсь.

Denjs писал(а):
13.02.2011 21:03
У него проблема была в том, что не получается открыть /dev/usblp0 одновременно на чтение и запись. - чей это косяк (питон или драйвер) мне вот правда сейчас не понятно.

Питон может то, что позволяет драйвер. Я попробую в rw режиме проверить (не помню как я делал). Но проблемы были похожие, права на устройства я сразу настроил правильные (добавился в группу lp).
Ubuntu Linux powered by Python/Django.
Мои проекты на GitHub.
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Программа может отдавать печать в JavaPOS и запустить принтер под управление JavaPOS было-бы оптимальнее всего.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

ipadm писал(а):
14.02.2011 09:35
Программа может отдавать печать в JavaPOS и запустить принтер под управление JavaPOS было-бы оптимальнее всего.

а зачем вы тогда купс-драйвера собираете, ежели жаба-пос вам поможет?
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Denjs писал(а):
14.02.2011 10:45
ipadm писал(а):
14.02.2011 09:35
Программа может отдавать печать в JavaPOS и запустить принтер под управление JavaPOS было-бы оптимальнее всего.

а зачем вы тогда купс-драйвера собираете, ежели жаба-пос вам поможет?


Дело в том, что я с JavaPOS не работал никогда. Не знаю что оно и с чем его едят.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Результаты:

1. Удалось собрать дрова из исходника (поставлялся на диске с принтером и есть на сайте ситизена)
2. Удалось заставить работать переходник com2usb (комада: modprobe ftdi_sio vendor=0x2730 product=0x1000)
3. Удалось заставить печатать кирилицу. Создал файл в нем в hexedit прописал три символа: 1B 74 37
из инструкции по принтеру (<1B>H<74>H<7> http://citizen-systems.com/support/downloa...280CMD002E.pdf). Потом указал cat citizen_init > /dev/ttyUSB0 Файл на печать отправляется тем же методом и должен быть в кодировке cp866

После перезагрузки системы печатать ни в кирилице ни в латинице не хочет. Выдает вопросительные знаки. Повтор инициализации (шаг 2 и 3) ничего не дает.

Врода удалось собрать приложение с поддержкой этого принтера, но оно также печатает только вопросительные знаки.

В связи с чем вот какие вопросы:
1. Инициализация кодовой страницы принтера должна происходить каждый раз после вкл/выкл или принтер помнит что ему скормлена команда ESC?
2. Как побороть вопросительные знаки? Может нужно послать ESC команду на сброс всех параметров или еще чего?
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

давайте писать о каких именно драйверах идет речь? (CUPS? что то своё?)
для какого именно устройства ?
откуда печатаете?! !!!!

ругацца буду.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Прошу прощения,

драйвер для CITIZEN S280

задания отправляю перенаправлением вывода из командной строки. Без CAPS.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

>>драйвер для CITIZEN S280
какой именно драйвер? т.е. для какой подсистемы печати?

>>задания отправляю перенаправлением вывода из командной строки. Без CAPS.
т.е. перенаправлением в /dev/ttyUSB0? т.е. вы сами формируете задания в кодовых последовательностях принтера ("на языке программирования принтера" - т.е. скорее всего на "esc/pos")? тогда зачем вы собирали драйвер?

>>1. Инициализация кодовой страницы принтера должна происходить каждый раз после вкл/выкл или принтер помнит что ему скормлена команда ESC?
если мы про esc/pos - то да. я делаю это каждый раз (в OTPD) : каждый раз провожу и аппаратный сброс, указание кодовой страницы, проверку некоторых параметров.
Конкретные кодовые последовательности сейчас не помню - все есть в исходниках модулей esc-pos принтеров .
Возможно вам они будут полезны - см приложение.

>>2. Как побороть вопросительные знаки? Может нужно послать ESC команду на сброс всех параметров или еще чего?
не понимаю что за вопросительные знаки... вы в той кодировке которая нужна посылаете принтеру задания (см документацию на принтер какие кодировки он понимает...) ? ну... может после сброса параметров оно и заработает...

и вы уверены что режимы/параметры компорта которые использует usb2com-шнурок совпадают с теми на которые настроен принтер?
Вложения
OTPD.t_posprinter_citizen_cbm1000.src.2010.xx.zip
(43.95 КБ) 356 скачиваний
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Denjs писал(а):
27.02.2011 04:54
>>драйвер для CITIZEN S280
какой именно драйвер? т.е. для какой подсистемы печати?


драйвер я собрал из исходника, который поставлялся в сомплекте с принтером и подписан как CUPS драйвер. Задействуется ли он при отправке вывода методом " > " я пока не разобрался.

Denjs писал(а):
27.02.2011 04:54
>>задания отправляю перенаправлением вывода из командной строки. Без CAPS.
т.е. перенаправлением в /dev/ttyUSB0? т.е. вы сами формируете задания в кодовых последовательностях принтера ("на языке программирования принтера" - т.е. скорее всего на "esc/pos")? тогда зачем вы собирали драйвер?


1. Да. Я формирую одну последовательность для инициализации кодовой страницы (из мануала по esc командам принтера три 16-ричных символа), а далее на печать скармливаю простой текст в кодировке cp866.
2. По драйверу - я не могу в текстовый вайл отгружать картинки и сответственно форматирование и шрифты. Поэтому предположил, что если пускать через CUPS все это будет поддерживаться. Пока разбираюсь как из java вормировать и пускать уже заготовленные последовательности в esc кодах, чтобы формировалась и графика и шрифты и разметка.


Denjs писал(а):
27.02.2011 04:54
>>1. Инициализация кодовой страницы принтера должна происходить каждый раз после вкл/выкл или принтер помнит что ему скормлена команда ESC?
если мы про esc/pos - то да. я делаю это каждый раз (в OTPD) : каждый раз провожу и аппаратный сброс, указание кодовой страницы, проверку некоторых параметров.


О, с этим теперь понятно. Спасибо.

Denjs писал(а):
27.02.2011 04:54
>>Конкретные кодовые последовательности сейчас не помню - все есть в исходниках модулей esc-pos принтеров .
>>Возможно вам они будут полезны - см приложение.

>>2. Как побороть вопросительные знаки? Может нужно послать ESC команду на сброс всех параметров или еще чего?
не понимаю что за вопросительные знаки... вы в той кодировке которая нужна посылаете принтеру задания (см документацию на принтер какие кодировки он понимает...) ? ну... может после сброса параметров оно и заработает...

и вы уверены что режимы/параметры компорта которые использует usb2com-шнурок совпадают с теми на которые настроен принтер?


Вопросительные знаки возникают при попытке печати из java, а драйвер шнурка поднимается вроде правильно, т.к. при печати ">" кириллица отображается нормально.

Спасибо что тратите на меня время.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

1. Да. Я формирую одну последовательность для инициализации кодовой страницы (из мануала по esc командам принтера три 16-ричных символа), а далее на печать скармливаю простой текст в кодировке cp866.
а принтеру вы сказали что будете использовать cp866 или довольствуетесь тем что в нем по умолчанию так заложено?
2. По драйверу - я не могу в текстовый вайл отгружать картинки и сответственно форматирование и шрифты. Поэтому предположил, что если пускать через CUPS все это будет поддерживаться. Пока разбираюсь как из java вормировать и пускать уже заготовленные последовательности в esc кодах, чтобы формировалась и графика и шрифты и разметка.

Вы уж или тем, или другим рисуйте. совмещать не получится. или по очереди. Но на месте CUPS-драйверов я бы перед каждой посылкой заново переинициировал принтер. На всякий случай.

>>разбираюсь как из java вормировать и пускать уже заготовленные последовательности в esc кодах,
а тут уже случайно не javapos пахнет?

вы определитесь что именно вы будете использовать. Совмещая, есть высокие шансы, что вы скорее всего будете мешать 2-м системам работать с принтером. CUPS скажем настроил принтер, а тут вы смешались и перенастроили его под себя. Купс уже не печатает... глюки могут быт разнородные.

Если вам нужна утилита конвертации картинок в формат пригодный для esp-pos принтера - то такая (почти) утилита есть у меня. image2pbmp_convertor .
исходники идут с исходниками QDroid в ./QDroid/OTPD_project_copy4qdlibs/_support_software/image2pbmp_convertor - она конвертирует картинку в текстовое hex-описание. Вам остается только считать текст, по 2 символа преобразовать в числа и скормить принтеру. Смотрите как реализован тег IMG в исходниках которые я вам дал.
первые 2 символа - размер картинки в квадратах, потом по столбцам, сверху вниз слева направо описание картинки по 8 точек / байт.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
BIgAndy
Сообщения: 1923

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение BIgAndy »

Denjs писал(а):
27.02.2011 15:35
CUPS скажем настроил принтер, а тут вы смешались и перенастроили его под себя. Купс уже не печатает... глюки могут быт разнородные.

Правильно написанный CUPS драйвер всегда посылает сроку инициации на принтер перед печатью. Собственно открыв ppd файл при небольшой смекалке можно это место выудить...

Если вам нужна утилита конвертации картинок в формат пригодный для esp-pos принтера - то такая (почти) утилита есть у меня. image2pbmp_convertor .

В линуксе есть штатная. Convert называется. И куча для работы с PDF

Спасибо сказали:
ipadm
Сообщения: 11
ОС: Ubuntu 10.04
Контактная информация:

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение ipadm »

Разобрался. Каким-то невероятным образом в hex логотипа выстроилась последовательность, которая воспринималась принтером как команда. Убрал картинку, инициализировал принтер по мануалу и печатаю кириллицей напрямую на cat file > /dev/ttyUSB0

Спасибо за вправленный мозг.
Laptop: Dell Inspiron 1501
OS: Ubuntu
Modem: Sierra AirCard 595U Sprint
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

BIgAndy писал(а):
27.02.2011 22:27
Если вам нужна утилита конвертации картинок в формат пригодный для esp-pos принтера - то такая (почти) утилита есть у меня. image2pbmp_convertor .

В линуксе есть штатная. Convert называется.

тогда, пожалуйста, опишите по шагам :
* процесс "ручного" приготовления .jpg файла
* соответствующие esc/pos команды
** (и алгоритм приготовления параметров для них)
* как это все отослать на порт esc/pos принтер что бы он напечатал картинку

.... и всё с помощью "штатной утилиты convert".

Вам респект, мне - прекращение спора (а иначе я буду спорить о том что это трудоемко :rolleyes: )))), всем - полезная инфа.
Серьезно... спасибо заранее.
ipadm писал(а):
28.02.2011 12:21
Разобрался.
ну и чудненько)
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
prof
Сообщения: 119
ОС: gentoo

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение prof »

Возникло два вопроса.

Будет ли работать Posiflex Aura pp6800 с имеющимися драйверами?

Существует ли вариант работы чекового принтера с WEB-клиентом 1С 8.2?
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

Posiflex Aura pp6800
гм... модуль принтера надо выставить в "pp5200". И наверное должно работать.
Я имел доступ к pp5200 и pp7000 (с сетевым и serial интерфейсами) - с ними работает. Полагаю pp6800 не должен отличаться особо, но я с ним не работал.

Но повторюсь - сейчас многие вещи в драйверах OTPD не стабильны. И у меня нет доступа к оборудованию что бы это исправить.
В общем случае из соображений надежности - я бы рекомендовал использовать "прямую работу с портом принтера". Это немного более трудоемко, но стабильнее. (см com2tcp-and-libtelnet1C ). Посмотрите - если это для вас приемлемо - я доработаю для вас скрипты QDroid (например сейчас можно вынести все настройки в ini-файл) - т.к. на сайте я давно не обновлял QDroid. )).
Увы я не помню - тестировал ли я addin_libtelnet c 8.2 . в 8.1 оно работает.

насчет OTPD: Если вы в Москве и можете организовать доступ к оборудовнаию - я смогу довести и OTPD до стабильного состояния.
отмечу - решение предполагает работу с принтером через "сервер печати" (сам OTPD работает вне кнешних компонент подключаемых к 1С).
Если все описанное выше вас устраивает - можно доработать OTPD.

Существует ли вариант работы чекового принтера с WEB-клиентом 1С 8.2?

Полагаю это можно будет организовать только в том случае, если вы на "1С-ном сервере прилождений" сможете подгрузить внешнюю компоненту (.dll писанная по "первой технологии" ВК - т.е. сервер 1С у вас должен быть виндовый), а на клиенте - поднимите "сервер печати OTPD" (его можно собрать и под Linux и под Windows). При этом у вас должна быть возможность обращения с сервера к клиенту по сети (пропинговать например).
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
prof
Сообщения: 119
ОС: gentoo

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение prof »

Спасибо что откликнулись!

Denjs писал(а):
02.06.2011 16:32
Posiflex Aura pp6800
гм... модуль принтера надо выставить в "pp5200". И наверное должно работать.
Я имел доступ к pp5200 и pp7000 (с сетевым и serial интерфейсами) - с ними работает. Полагаю pp6800 не должен отличаться особо, но я с ним не работал.

Но повторюсь - сейчас многие вещи в драйверах OTPD не стабильны. И у меня нет доступа к оборудованию что бы это исправить.
Вот тут интересно. У Вас нет публичного csv или git c исходным кодом?

Denjs писал(а):
02.06.2011 16:32
насчет OTPD: Если вы в Москве и можете организовать доступ к оборудовнаию - я смогу довести и OTPD до стабильного состояния.
К сожалению, не в Москве. Но заставить работать эту связку придётся.

Denjs писал(а):
02.06.2011 16:32
Полагаю это можно будет организовать только в том случае, если вы на "1С-ном сервере прилождений" сможете подгрузить внешнюю компоненту (.dll писанная по "первой технологии" ВК - т.е. сервер 1С у вас должен быть виндовый), а на клиенте - поднимите "сервер печати OTPD" (его можно собрать и под Linux и под Windows). При этом у вас должна быть возможность обращения с сервера к клиенту по сети (пропинговать например).
Сервер на Debian, тут без вариантов. С сервером под линукс никто не экспериментировал, или там нет никакой возможности разработки/загрузки ВК?
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

prof писал(а):
02.06.2011 23:23
... У Вас нет публичного csv или git c исходным кодом?

Архивы с исходным кодом на сайте есть.
Сечас OTPD идет как расширения для QDroid и поставляется в его составе - потому и берите все с http://qdroid.berlios.de
На выходных попробую обновить. В QDroid много нового появилось за последний год.

prof писал(а):
02.06.2011 23:23
К сожалению, не в Москве. Но заставить работать эту связку придётся.

Подумайте для начала что вам и зачем надо. Что вы собираетесь печатать. Нужна ли вам графика? и прочее.

prof писал(а):
02.06.2011 23:23
Сервер на Debian, тут без вариантов. С сервером под линукс никто не экспериментировал, или там нет никакой возможности разработки/загрузки ВК?

Для начала расскажите о том что и куда вы собираетесь ставить.
Потому что если вы собираетесь ставить етерсофтовский "сервер терминалов" - это одно. Под него можно загрузить ВК addin_libtelnet.dll
А вот если вы собираетесь ставить "сервер приложения 1С" (родной для линукса от самого 1С) - то простите - никакого дебиана."Без вариантов". Только RHEL или возможно SLES. Все вопросы к 1С.
И под линуксовый сервер приложения 1С - полагаю можно загрузить только ВК созданную по "второй версии технологии ВК" - "с нативным API" как они говорят. Загрузить туда виндовую библиотечку с ВК по первой технологии писанную на дельфях - ну никак нельзя.
А с созданием ВК по второй версии технологии - простите я не разбирался, и думаю мало кто вообще.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
prof
Сообщения: 119
ОС: gentoo

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение prof »

Denjs писал(а):
03.06.2011 13:36
На выходных попробую обновить. В QDroid много нового появилось за последний год.
Ждём.

Denjs писал(а):
03.06.2011 13:36
А вот если вы собираетесь ставить "сервер приложения 1С" (родной для линукса от самого 1С) - то простите - никакого дебиана."Без вариантов". Только RHEL или возможно SLES.
Однако, уже работает...

Denjs писал(а):
03.06.2011 13:36
А с созданием ВК по второй версии технологии - простите я не разбирался, и думаю мало кто вообще.
Жаль. Но информация, вроде есть. Не совсем ясно что и как. Надо будет приглядеться.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

prof писал(а):
03.06.2011 14:51
Однако, уже работает...
работает? а в 1С сообщали что бы они пропатчили сервер? не должно оно так)))))
prof писал(а):
03.06.2011 14:51
Жаль. Но информация, вроде есть. Не совсем ясно что и как. Надо будет приглядеться.
Я могу предоставить вам телнет-интерфейс, по которому вы будете давать команды серверу печати, или COM2TCP серверу.
Если вы или кто-то сделаете механизм доступа к телнет из 1С работающий на линуксовом 1С-ном сервере приложений - замечательно.

Теоретически - я могу сделать мини-http-сервер (обернуть какую либо Qt-компоненту в расширение QDroid и слинковать его с OTPD...) - что бы (опять же теоретически) можно было использовать встроенные в 1С механизмы обращения по http - но это на мой взгляд дело мутное и неисследованное.... как минимум потому что соединение будет рваться постоянно... имхо не удобновато... в общем телнет получше бы...
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
prof
Сообщения: 119
ОС: gentoo

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение prof »

Denjs писал(а):
03.06.2011 15:02
работает? а в 1С сообщали что бы они пропатчили сервер? не должно оно так)))))
Немного оффтоп, конечно, но для кого 1С в deb'ах выкладывает свои сборки, если не для Debian? Или что-то сломалось в последних сборках?

Denjs писал(а):
03.06.2011 15:02
Я могу предоставить вам телнет-интерфейс, по которому вы будете давать команды серверу печати, или COM2TCP серверу.
Если вы или кто-то сделаете механизм доступа к телнет из 1С работающий на линуксовом 1С-ном сервере приложений - замечательно.
Вот задачка интересна, но отправных материалов нет, какой-нибудь SDK был бы. Или, хотя бы пример с хело ворлд в исходниках. Надо поискать...

Denjs писал(а):
03.06.2011 15:02
Теоретически - я могу сделать мини-http-сервер (обернуть какую либо Qt-компоненту в расширение QDroid и слинковать его с OTPD...) - что бы (опять же теоретически) можно было использовать встроенные в 1С механизмы обращения по http - но это на мой взгляд дело мутное и неисследованное.... как минимум потому что соединение будет рваться постоянно...
Можно не начинать печать до поступления нужной команды. Но согласен, "творчества" в данном случае больше.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение Denjs »

prof писал(а):
03.06.2011 14:51
Denjs писал(а):
03.06.2011 13:36
На выходных попробую обновить. В QDroid много нового появилось за последний год.
Ждём.

чего-то не хочет у меня пока дружить тортойз svn с берлиозовским svn... разбираться не стал - выложил текущую ревизию одним файлом.
ну в общем вот: можете забирать исходники:2011.06.08_rev258.
Лицензия на все (кроме ВК для 1С) - GPLv2.

Там сейчас много мусора, много чего начато, но не доделано... хотя большая часть подпроектов собирается по "qmake&&make" из корневого каталога (по крайней мере, под виндоус))))
- некоторые проекты компилят бинарники в свои собственные каталоги, а что-то надо собирать самому... в общем смотрите сначала .pro файлы,
потом смотрите каталоги. Многие утилиты (большей частью каталоги support_software) - надо собирать отдельно (в общий проект они не включены).
Увы, документация на многие расширения не создана - потому ежели вознамеритесь писать qdroid-скрипы - смотрите заголовочные файлы ботов в библиотеках расширений. Все что в секции slots - то из скрипта и доступно.

Вам, думаю, будут интересны в первую очередь скрипты
./solutions/OTPD_Print_Server/otpd_print_server.v0.qs
./solutions/Com2Tcp_Server/com2tcp_server.v1.qs

и программы:
.\OTPD_project_copy4qdlibs\_solutions_and_demos\otpd_phtmlrender
.\OTPD_project_copy4qdlibs\_support_software\image2pbmp_convertor

Описания на posHTML найдете в .\OTPD_project_copy4qdlibs\OTPD\docs\manuals\like-mans
а диаграмму сигнал-слот-связей объектов OTPD-узла в каталоге .\OTPD_project_copy4qdlibs\OTPD\docs\manuals\diags

За сим вводную думаю пока закончить... теперь, как говорят на ЛОРе - "ругайте!" )))
Помочь я вам без оборудования, боюсь, не смогу особо, разве что только советом, но кто знает.
удачи))))
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
prof
Сообщения: 119
ОС: gentoo

Re: драйвера для промышленных принтеров этикеток и чеков

Сообщение prof »

Спасибо!

Но пока не всё радужно, qmake && make приводит к таким результатам (из qDroid_Bot_Hive/qdroid.shell.app/main/main.cpp):
g++ -Wl,-rpath,/usr/lib64/qt4 -o ../bin/lin/qdroid.shell_v1.5.bin build/lin/t_StartSender.o build/lin/main.o build/lin/moc_t_StartSender.o build/lin/qrc_default_res.qdroid.shell.o -L/usr/lib64/qt4 -L/usr/lib64 -L/usr/lib64/qt4 -lQtScriptTools -lQtScript -L/usr/X11R6/lib -lQtXml -lQtGui -lQtCore -lgthread-2.0 -lrt -lglib-2.0 -lpthread
build/lin/main.o: In function `qdr_loadQDroid()':
/usr/include/qt4/QtCore/qlist.h:398: multiple definition of `_init'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../lib64/crti.o:(.init+0x0): first defined here
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/../../../../x86_64-pc-linux-gnu/bin/ld: Warning: type of symbol `_init' changed from 2 to 1 in build/lin/main.o
collect2: выполнение ld завершилось с кодом возврата 1


Как я понял gcc не понравилось это:

Код: Выделить всё

        if (((_get_QScriptEngine) and (_init)) and (_set_argList))
        {
            //lbl.append("OK::<<function _get_QScriptEngine resolved>> ");
            if (debugLevel>=3) qDebug()<<"loadQDroidAndRunScript()[0194]: OK... function _get_QScriptEngine resolved.";

            _init();
            _set_doQuitOnErrors(false);

Далее как я понимаю важно указание средств сборки: gcc-4.4.5 и qt-4.7.2. Видимо префикс TF не был лишним.
Спасибо сказали:
Ответить