Сообщения без ответов | Активные темы Текущее время: Чт дек 05, 2019 5:32 pm



Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 32 ]  На страницу 1, 2, 3  След.
Печать QR code в ФР Ярус 01К 
Автор Сообщение
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Печать QR code в ФР Ярус 01К
Здравствуйте!

Подскажите пожалуйста, как печатать QR code через COM-объект драйвера ФР(DrvFR_4.10_288)? Какие методы и свойства необходимо использовать?
До этого печатали PDF487 через метод fr.LoadAndPrint2DBarcode(), однако изменения свойства fr.BarcodeType не равный нулю вообще не приводит к успеху.
Описания в руководстве программиста к сожалению по этому вопросу не нашел.

Заранее спасибо.


Пн ноя 10, 2014 11:20 am
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
Все таки методом научного тыка выявил печать QR Code - это fr.BarcodeType = 3. Правда почему то после его печати идет автообрез.


Пн ноя 10, 2014 12:38 pm
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
Коллеги - подсобите советом.
1. Что делать если QR - code режется сразу после печати, хотя ни каких команд для этого не поступало?
2. Правильно ли использовать выше представленный метод для печати баркода или нет?
3. Какие свойства необходимо использовать для максимальной настройки баркода при печати?

Этих бы вопросов не было, при наличии документации - но ее нет. Замечу с PDF417 таких проблем не было.

Заранее благодарен.


Пн ноя 10, 2014 2:55 pm
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
Коллеги, прием :D


Вт ноя 11, 2014 5:03 pm
Профиль
Новичок

Зарегистрирован: Пт апр 24, 2009 12:28 pm
Сообщения: 98
Откуда: Штрих-М
Сообщение Re: Печать QR code в ФР Ярус 01К
Добрый день! Документация готовится.
Примерно такая работа с двумерным штрихкодом
Код:
  // Сначала нужно загрузить данные блоками
  Driver.BlockType := 0;
  Driver.BlockNumber := 0; // Номер блока данных
  Driver.BlockDataHex := 'FFFFFF'; // Размер одного блока данных до 64 байт
  Driver.LoadBlockData;

  // Печать
  Driver.BarcodeType := 0; {0 - PDF417; 1 - DataMatrix;  2 - AZTEC; 3 - QR CODE}
  Driver.BarcodeDataLength := // Длина данных в байтах
  Driver.BarcodeStartBlockNumber := 0// Номер первого блока данных
  Driver.BarcodeParameter1 := // Параметр 1 см. таблицу
  Driver.BarcodeParameter2 := // Параметр 2
  Driver.BarcodeParameter3 := // Параметр 3
  Driver.BarcodeParameter4 := // Параметр 4
  Driver.BarcodeParameter5 := // Параметр 5
  Driver.BarcodeAlignment := // Выравнивание: 0 - центр; 2- по левому краю; 3 - по правому краю
  Driver.Print2DBarcode;

Значения BarcodeParameter1..BarcodeParameter5 в зависимости от типа ШК: (Значения параметров согласно документации на притнер VKP80)
  PDF 417                 |DATAMATRIX      |AZTEC                    |QR Code
1 Number of columns       |Encoding scheme |Encoding scheme          |Version, 0=auto
2 Number of rows          |Rotate          |-                        |Mask, 0=auto
3 Width of module         |Dot size        |Dot size                 |Dot size, 3-8
4 Module height           |Symbol size     |Symbol size              |-
5 Error correction level  |-               |Error correction level   |Error correction level, 0-3


Вт ноя 11, 2014 6:40 pm
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
Здравствуйте. Протестировал Вашу рекомендацию следующим кодом:
Код:
            const int size = 64;
            for (int i = 0, j = 0; i < barcodeHex.Length; i += size, j++)
            {
                _printer.BlockType = 0;
                _printer.BlockNumber = j;
                _printer.BlockDataHex = string.Concat(barcodeHex.Skip(i).Take(size));
                _printer.LoadBlockData();
            }

            _printer.BarcodeType = 3;
            _printer.BarcodeDataLength = barcodeHex.Length;
            _printer.BarcodeStartBlockNumber = 0;
            _printer.BarcodeParameter1 = 0;
            _printer.BarcodeParameter2 = 0;
            _printer.BarcodeParameter3 = 5;
            _printer.BarcodeParameter4 = 0;
            _printer.BarcodeParameter5 = 0;
            _printer.BarcodeAlignment = TBarcodeAlignment.baCenter;
            _printer.Print2DBarcode();


результат увы отрицательный. На входе 254 байта. Если делать размер блока 64 байта, то сканер считывает только первые 16 байт, если размер делать 32 байта - то только первые 8 байт. Можете подсказать что делаю не так?

ЗЫ. Этот метод печати дает положительный результат, правда сразу же после печати сама идет небольшая прокатка и автоотрез. :D
Код:
            _printer.BarcodeType = 3;
            _printer.BlockDataHex = barcodeHex;
            _printer.BarcodeParameter1 = 0;
            _printer.BarcodeParameter2 = 0;
            _printer.BarcodeParameter3 = 5;
            _printer.BarcodeParameter4 = 0;
            _printer.BarcodeParameter5 = 0;
            _printer.BarcodeAlignment = TBarcodeAlignment.baCenter;
            _printer.LoadAndPrint2DBarcode();


ЗЗЫ. Кстати первый вариант тоже после печати прокатывает бумагу и автоматически режет.


Чт ноя 13, 2014 1:25 pm
Профиль
Новичок

Зарегистрирован: Пт апр 24, 2009 12:28 pm
Сообщения: 98
Откуда: Штрих-М
Сообщение Re: Печать QR code в ФР Ярус 01К
По идее должно быть так
Код:
const int size = 128;
...
_printer.BarcodeDataLength = barcodeHex.Length / 2;

Т.к. 1 байт в HEX формате занимает 2 байта

По поводу отрезки - не знаю. По идее ее быть не должно. Хотелось бы посмотреть лог драйвера


Чт ноя 13, 2014 4:08 pm
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
1. Скорректировал длину. Сканер все одно читает только первые 16 байт при блоке в 64 байта. Это если печатать функцией Print2DBarcode. При печати LoadAndPrint2DBarcode все гуд.

2. По поводу отрезки прилагаю вам лог печати одного чека с баркодом. Как таковой команды нет на отрез, но физически если сразу не резать чек после баркода, происходит протяжка чека где-то на 10 строк и его авто-отрез. Это не было бы большой проблемой если баркод был бы в конце чека, но бизнес требует его перед фискальной частью.


Вложения:
DrvFR.zip [10.48 КБ]
Скачиваний: 215
Пн ноя 17, 2014 4:03 pm
Профиль
Новичок

Зарегистрирован: Пт июл 29, 2011 12:45 pm
Сообщения: 97
Сообщение Re: Печать QR code в ФР Ярус 01К
Коллеги, методом научного тыка выяснил, что бы QR - code не резался после печати, перед ним надо всегда печатать строку - хотя бы пустую. Как вы понимаете это актуально для случаев когда сначала печатается баркод, а потом остальное тело чека. С тем же PDF417 проблем с этим нет.


Чт ноя 27, 2014 10:06 am
Профиль
Новичок
Аватара пользователя

Зарегистрирован: Чт май 17, 2007 11:14 am
Сообщения: 63
Откуда: 1С-Рарус
Сообщение Re: Печать QR code в ФР Ярус 01К
Подскажите, как использовать функцию "LoadAndPrint2DBarcode"?

На все попытки один ответ - "Некорректные параметры в команде"

Вот мой код:

Код:
var
  DriverFR: OleVariant;
begin
  DriverFR := CreateOleObject('Addin.DrvFR');
  try
    DriverFR.Password := 30;
    DriverFR.ComNumber := 14;
    DriverFR.BaudRate := 6;
    DriverFR.Connect;

    DriverFR.BarcodeType := 3;
    DriverFR.BarcodeStartBlockNumber := 0;
    DriverFR.BarCode := '12345';
    DriverFR.BlockDataHex := '32323232';
    DriverFR.BarcodeAlignment := 0;

    DriverFR.BarcodeParameter1 := 0;
    DriverFR.BarcodeParameter2 := 0;
    DriverFR.BarcodeParameter3 := 3;
    DriverFR.BarcodeParameter4 := 0;
    DriverFR.BarcodeParameter5 := 0;
    DriverFR.BarcodeFirstLine := 0;

    DriverFR.Password := 30;
    DriverFR.LoadAndPrint2DBarcode;
    ShowMessage(DriverFR.ResultCodeDescription);
  finally
    VarClear(DriverFR);
  end;

_________________
С уважением, Стовпец Игорь,
Департамент разработки,
Внедренческий центр "1С-Рарус"
+7 (495) 223-0404


Пн дек 14, 2015 7:33 pm
Профиль WWW
Постоянный участник
Аватара пользователя

Зарегистрирован: Пт май 19, 2006 6:26 pm
Сообщения: 10424
Откуда: Штрих-М
Сообщение Re: Печать QR code в ФР Ярус 01К
Была проблема с этим методом в драйвере ФР. только ошибка выдавалась другая - размер картинки превышает допустимый размер.
С какой версией драйвера ФР работаете Вы и попробуйте обновить до 4.12.418 и сообщите результаты:
ftp://ftp.shtrih-m.ru/download/FR/Software/Drivers/

_________________
С уважением, Селихов Дмитрий Юрьевич
Инженер технической поддержки ЗАО "Штрих-М"
mailto: support@shtrih-m.ru
тел. (495) 787-60-96
ВНИМАНИЕ:
Работает Официальный Интернет-Магазин от компании Штрих-М
Shels-m.ru


Вт дек 15, 2015 2:09 pm
Профиль
Новичок
Аватара пользователя

Зарегистрирован: Чт май 17, 2007 11:14 am
Сообщения: 63
Откуда: 1С-Рарус
Сообщение Re: Печать QR code в ФР Ярус 01К
Всё то же - некорректные параметры в команде.
Просьба привести работоспособный пример кода для команды LoadAndPrint2DBarcode

P.S.
Как-то у вас всё сложно с QR-кодом ((. Не ожидал. У конкурентов всё гораздо проще реализуется

_________________
С уважением, Стовпец Игорь,
Департамент разработки,
Внедренческий центр "1С-Рарус"
+7 (495) 223-0404


Ср дек 16, 2015 1:07 pm
Профиль WWW
Новичок
Аватара пользователя

Зарегистрирован: Чт май 17, 2007 11:14 am
Сообщения: 63
Откуда: 1С-Рарус
Сообщение Re: Печать QR code в ФР Ярус 01К
Цитата:
LoadAndPrint2DBarcode
ЗагрузитьИПечататьДвумерныйШтрихкод
Загружает и печатает двумерный штрихкод. Данные для штрихкода берутся из свойства
BlockDataHex .


С другой стороны есть свойство:
Цитата:
BarCode Строка RW Блок данных Hex 171

Так какое свойство всё-таки используется? BlockDataHex или BarCode ?
И что туда писать надо? В каком виде?...

_________________
С уважением, Стовпец Игорь,
Департамент разработки,
Внедренческий центр "1С-Рарус"
+7 (495) 223-0404


Ср дек 16, 2015 1:11 pm
Профиль WWW
Новичок
Аватара пользователя

Зарегистрирован: Чт май 17, 2007 11:14 am
Сообщения: 63
Откуда: 1С-Рарус
Сообщение Re: Печать QR code в ФР Ярус 01К
Еще вопрос:
Как кодировать русские символы для свойства BlockDataHex?
Пробовал оставить как есть (ANSI), пробовал UTF - не получается (

_________________
С уважением, Стовпец Игорь,
Департамент разработки,
Внедренческий центр "1С-Рарус"
+7 (495) 223-0404


Ср дек 16, 2015 2:08 pm
Профиль WWW
Новичок
Аватара пользователя

Зарегистрирован: Чт май 17, 2007 11:14 am
Сообщения: 63
Откуда: 1С-Рарус
Сообщение Re: Печать QR code в ФР Ярус 01К
Цитата:
BlockType
ТипБлокаДанных
Тип: Integer / Целое
Свойство используется методом LoadBlockData.


А какие бывают типы, и что они значат?

P.S.
Руководство по драйверу новое так долго ждал и так разочаровало ((((

_________________
С уважением, Стовпец Игорь,
Департамент разработки,
Внедренческий центр "1С-Рарус"
+7 (495) 223-0404


Ср дек 16, 2015 2:10 pm
Профиль WWW
Показать сообщения за:  Поле сортировки  
Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.   [ Сообщений: 32 ]  На страницу 1, 2, 3  След.

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.
Русская поддержка phpBB