Один из вариантов подключения Viki Print Ф к кассовым программам – интеграция через систему команд регистратора, отправляющих команды в COM-порт. COM-порт в этом случае может быть реальным, при подключении через RS232, или виртуальным, при подключении по USB.
Система команд для новых регистраторов ВИКИ ПРИНТ Ф (онлайн-кассы с поддержкой нового ФЗ 54) претерпела некоторые изменения в сравнении с моделями для работы с ЭКЛЗ и в ЕНВД-режиме. Старая система команд для ЭКЛЗ-версий также доступна на сайте.
На текущий момент онлайн-кассы передают данные операторам в ФФД 1.0 (формат фискальных документов редакции 1.0), который с течением времени будет заменен на ФФД 1.05 и потом на ФФД 1.1. В соответствии с этими изменениями форматов система команд регистраторов ВИКИ ПРИНТ Ф так же скорее всего будет претерпевать некоторые изменения. На текущий момент доступно 2 редакции системы команд:
1. "Инструкция по программированию FM16 версий до 656 (ФФД 1.0).docx" – описывает актуальную систему команд регистраторов, в данный момент производимых компанией Дримкас и работающих на рынке по новым правилам ФЗ 54,
2. "Инструкция по программированию FM16 (ФФД 1.05).docx" – описывает систему команд, которая придет на смену текущей, когда ФНС примет решение перейти на Форматы Фискальных Документов редакции 1.05. Переход на 1.05 будет сопровождаться сменой прошивки на устройствах.
Для проверки работы команд используйте сервисную утилиту Fito, она оперирует теми же командами, на закладке тестирование они описаны с теми же параметрами и кодами команд. При наведении на поле во всплывающей подсказке описаны варианты их использования.
Утилита Fito представляет из себя исполняемый файл Fito.exe и файл конфигурации Fito.ini, файл fito-spec.txt описывает варианты модификации файла Fito.ini под специфические нужны. Поставляется утилита Fito в виде zip-архива, для начала работы с утилитой достаточно распаковать архив.
ККТ линейки ВИКИ ПРИНТ Ф не имеют собственного сетевого интерфейса, только COM и USB порты. Для возможности передавать данные от ККТ к ОФД в операционную систему кассового ПК следует дополнительно установить службу маршрутизации ComProxy. Процесс установки службы и регистрации ККТ линейки ВИКИ ПРИНТ Ф разобран в отдельной статье на сайте.
Комментарии
Комментариев: 16
Роберт, приветствую.
Все конечно замечательно, но конкретно хотелось бы увидеть статью по интеграции с кассовым ПО сторонних производителей.
Предлагаю создать раздел ФЗ54 совместимо, где будет перечислен наиболее популярный софт и совместимость с ним по новому порядку применения ККТ.
На данный момент интересуют типовые конфигурации 1С, Штрих-М Кассир 5, Frontol
Поддерживаю Владимира. Вопрос очень актуальный.
Видимо о поддержке во Frontol и Штрих-М Кассир 5 Можно забыть
Добрый вечер.
При подключении Вики Принт к своему кассовому софту наткнулся на довольно глупый баг в прошивке.
Вот что возвращает ФР через FITO, если на нем не пробито ни одного чека:
Номер команды : <03>
ID команды : <.>
Код ошибки : <00> { Команда выполнена без ошибок }
Тип последнего чека : 48058
Номер последнего чека : 48572.3250634686
Номер документа : 3385378758
Cумма последнего чека : 3318006722
Cумма скидки по последнему чеку : 1511881243620571.84
Cумма наценки по последнему чеку : 1569753381891033.18
А вот что будет, если пробить первый чек:
Номер команды : <03>
ID команды : <:>
Код ошибки : <00> { Команда выполнена без ошибок }
Тип последнего чека : 2
Номер последнего чека : 1.1
Номер документа : 2
Cумма последнего чека : 3
Cумма скидки по последнему чеку : 0.01
Cумма наценки по последнему чеку : 0.00
Судя по всему, в первом случае, когда чеков еще нет, прошивка это не учитывает и возвращает "погоду" (переполнение? лезет не в ту область памяти?). Потратил 3 часа, чтобы понять, в чем дело, за что "лучи добра" разработчикам прошивки, т.к. алгоритм в кассовом ПО сверяет номера чеков до и после печати.
С Пиритами такого не припомню. Хотя, вероятно, потому что после фискализации ЦТОшники пробивали тестовый чек.
Еще пришлось добавить обрезание пробельных символов для команды 0x42, параметры "Название" и "Артикул (штриховой код)". Пирит умеет это делать самостоятельно, Вики Принт печатает все вместе с пробельными символами, что в моем случае приводило к переносу строки.
Ну а в целом - заработало (используется своя реализация протокола обмена).
Приветствую всех!
Думаю в правильную тему задаю вопрос, вроде здесь появляются спецы кто самостоятельно интегрирует Вики в свое ПО. Версия PiritLib.dll - 1.0.9.
Купили аппарат Вики Принт 57 Ф, пытаемся интегрировать в нашу платежную систему. Проблема на самом первом этапе - при вызове функции openPort с правильными настроечными параметрами возвращается код ошибки - 2001. В документации максимальная ошибка = 2000. В чем проблема открытия порта? Думаю проблема элементарная! С другими аппаратами таких начальных проблем не было ни со Штрихами\Примами\Принтами, все было ясно и понятно описано.
Доброго времени суток.
Есть несколько вопросов к разработчикам библиотеки драйвера к "Вики Принт 57Ф" PiritLib.dll:
1. Каков порядок начала работы с фискальным регистратором?
2. Есть ли пример в исходных текстах (С++ или Delphi) приложения, которое подключается к фискальному регистратору, печатает фискальный чек и корректно завершает работу?
3. С какими параметрами нужно вызывать функцию openPort (при вызове openPort("COM1", ...); возвращает ошибку 2001, которой нет в документации. Версия PiritLib.dll 1.0.9.580) ?
4. Зачем библиотека при загрузке открывает консольное окно? Можно ли это отключить?
5. Функция closePort есть в библиотеке, но не описана в документации ("Инструкция по использованию драйвера ПТК Pirit K 2017.docx"). Нужно ли её вызывать и если да, то с какими параметрами?
6. Есть ли еще функции или переменные, которые есть в библиотеке, но отсутствуют в описании?
7. Могут ли разработчики библиотеки предоставить стандартный заголовочный файл (что-то вроде PiritLib.h или PiritLib.pas) в котором описаны все структуры и функции?
8. Судя по названию "Вики Принт 57Ф", фискальный регистратор совместим с ФЗ-54 и позволяет отправлять "электронные чеки" - без печати на кассовой ленте, но с отправкой покупателю в виде SMS или E-mail. Каким образом указать эти реквизиты в чеке?
Поддерживаю
Аллле!! Сюда кто-то заглядывает из специалистов программной поддержки Дримкасов???
Столько вопросов задано и не одного ответа!!!
Капец поддержка!!!
>>> Галион-ИТ
Вся документация на PiritLib.dll это немножко ребус, написано одно - работает по другому!
Только путем проб и ошибок удалось интегрировать сей шедевр в свое ПО.
И то, только на версии 1.0.5, на 1.0.9 - тоже тупо возвращает ошибку 2001, которой нет в документации !!!!
Коллеги, заскриню вашу переписку, чтобы чуть более аргументированно отвечать на вопросы вида "почему ты не используешь драйвер от %VendorName%". :D
Если серьезно, "Кристалл Сервис" всегда славился укладыванием болтов на мелких клиентов. Более-менее адекватная поддержка у них только для крупных заказчиков. У нас возникла проблема из-за тормозного ComProxy (например, запрос состояния, в том виде, в котором он был реализован в нашем драйвере, выполняется через ComProxy около 100 мс против 20 без ComProxy, разница в 5 раз!). Причем разница довольно случайна - где-то работает более-менее сносно, где-то тормоза. Обращение к аккредитованному ЦТО дало ровным счетом ничего ("у нас все работает", ага; у нас тоже, только медленно). Пришлось оптимизировать на своей стороне, сейчас все в пределах нормы. Поэтому не ждите здесь быстрого отклика, и тем более, по существу. Да и непонятно, зачем вам этот PiritLib и танцы с ним - у "пиритов" и "вики" протокол, к счастью, очень простой и адекватный. За неделю с тестами реализуется самостоятельно на чем вам удобно. Тем более, сомневаюсь, что вам нужна реализация всех команд - скорее всего, это будет подмножество из десятка команд. Это не Атол с их версией 3.0.
Подсунули данное устройство с требованием быстро интегрировать его к нашей оригинальной системе учета и кассовой программе. Скачал доку, скачал программу Fito и... это все что есть?! Господа производители, познакомьтесь с примерами от конкурента Штрих-ФР - поставляется программа тестирования и исходный текст к ней на Delphi. День возни и все понятно. А тут :-(
Одним словом - исходники Fito на бочку, на любом языке, иначе просто не солидно!
Добрый день! Написал на Delphi 7 программу для обращения с фискальным регистратором Вики принт 57 ( Viki Print 57 ). Принцип работы посылки команд, как в утилите Fito. Данные для ОФД передаются. Если кому интересно взглянуть на исходники (могу всё и объяснить) - пишите мне на почту kilovatt_dv@mail.ru
Скажите пожалуйста, существует ли API для интеграции "фискальников" Viki Print с разработками на языке ObjC/Swift, IDE конечно же Xcode? Также хотелось бы понять, каким образом происходит процедура {интеграции через систему команд регистратора, отправляющих команды в COM-порт}? В смысле, имеется ввиду бинарное взаимодействие, то есть необходимо писать свой драйвер сначала ?
Delphi + PiritLib-v2.0.0.140 Viki_Print57
Долгие поиски в сети кода использования Viki_Print57 для Delphi не увенчались успехом.
Пришлось ковырять обрывки на С++ и остальное что нашлось в сети.
Все-таки добился - прикрутил PiritLib.dll к Delphi.
Тестовый проект в архиве.
Ссылка на облако: https://cloud.mail.ru/public/3txd/VuzqLHT7k
Отблагодарить можно на Yandex кошель 410015981760699
Всем удачного кодинга.
Доброе утро, как можно напечатать дополнительные необходимые реквизиты (Наименование и ИНН покупателя в чеке, теги 1227, 1228, 1230, 1229 и 1231) с помощью библиотеки PiritLib.dll?
Думаю смотреть надо в документации пункт -
3.4.17 Печать реквизита (0x49)
Функция: int libPrintRequsit(unsigned char codeReq, unsigned char attributeText, const char* str1,const char* str2,const char* str3,const char* str4);
C помощью данной команды могут печататься дополнительные реквизиты чека, при открытом чеке на продажу, возврат, внесения или изъятия.
и так далее...
Купили сиё чудо ВикиПринт57Ф проводим интеграцию с МоимСкладом. Пошёл второй день танцев с бубнами. С Атолом никаких проблем не было((( Сделали вывод, что в другие отделы будем покупать решение от другого производителя.
Войдите в службу, чтобы оставить комментарий.