|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Всем привет! В связи с переходом в 2019 году Атола на 10 драйвер и отказа от ДТО 8 возникла необходимость переписать обработку пробития чеков по новым правилам. Да вот незадача: в новой документации ( http://integration.atol.ru/#c850ebec42) Атол игнорит в примерах VBA и предлагает "допилить" примеры для Delphi или Python. К сожалению, к такому обороту событий я оказался не готов. В процессе игры с бубном удалось выяснить что: 10 драйвер работает с Access 2010 и выше. Библиотека addin_fptr10_x64.dll регистрируется только если на компе есть Visual Studio. Создал пустую форму, на открытие повесил: Set fptr = CreateObject ("AddIn.Fptr10") При открытии ошибку не выдает (в А2007 просил ActiveX). Ну а дальше, как герой старого интернет видео: "Это как бы,ну,на этом наши полномочия все". Даже в принципе, не могу понять с чего начать. Если кто сталкивался с 10 версией Атола, подскажите, как хоть должен выглядеть этот код в VBA или может есть пример как это в 1С сделано. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 12:44 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, Я бы здесь попробовал спросить http://forum.atol.ru/index.php?showtopic=34345&st=0&p=262827entry262827 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 13:07 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Атоловский форум излазил вдоль и поперек. К сожалению, ответ примерно такой http://forum.atol.ru/index.php?s=&showtopic=34374&view=findpost&p=267025 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 13:25 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманВсем привет! В связи с переходом в 2019 году Атола на 10 драйвер и отказа от ДТО 8 возникла необходимость переписать обработку пробития чеков по новым правилам. - Мне в последнее время атол мало нравится, то налоги тасуют от версии к версии, то коды оплаты... - Здается мне нужно рыть в альтернативу (по твоей же ссылке) в сторону веб сервера Для интеграции, помимо драйвера ККТ, можно использовать основанные на нем приложения: Android Service Web-сервер http://integration.atol.ru/#web-server Как UTM работает ты уже знаешь, тут тоже обмен файлами в кодировке UTM-8, минимальная платформа от Windows XP... Я так понимаю можно поднять атоловский веб сервер с кассой и посылать в него чеки отовсюду... Если честно, я пока не в курсе, просто прочитал твою статью... ну и по любому нужен аппарат с 10 прошивкой Ну и на самый крайняк - есть старый, добрый и проверенный Штрих... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 14:07 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Упс. Я затупил. Не добавил в надежное расположение исполняемый файл и команды просто не выполнялись. Исправил. Теперь вывалился запрос ActiveX. Ищу где он в А2010 включается (ранее работал только с 2003-2007). zimkon (guest_rusimport) теперь я понял почему не выполнялся мой код. vmag , web не прокатит. Много магазинов в деревнях без интернета. Сейчас буду дальше разбираться, но если есть какие мысли на эту тему - поделитесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 14:29 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманУпс. Я затупил. Не добавил в надежное расположение исполняемый файл и команды просто не выполнялись. Исправил. Теперь вывалился запрос ActiveX. Ищу где он в А2010 включается (ранее работал только с 2003-2007). zimkon (guest_rusimport) теперь я понял почему не выполнялся мой код. vmag , web не прокатит. Много магазинов в деревнях без интернета. Сейчас буду дальше разбираться, но если есть какие мысли на эту тему - поделитесь. А это всё сделано? COM-объект Для подключения драйвера как COM-объект необходимо зарегистрировать в системе библиотеку addin_fptr10_x86.dll (addin_fptr10_x64.dll в случае 64-битного приложения) с помощью команды regsvr32.exe. Библиотека может сама обнаружить установленный через инсталлятор драйвер. Также инсталлятор автоматически регистрирует компонент заданной архитектуры в процессе установки. В проекте необходимо создать объект типа ActiveX (или OLE) класса AddIn.Fptr10. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 14:53 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkon, Пока тыкаюсь как младенец. Для подключения драйвера как COM-объект необходимо зарегистрировать в системе библиотеку addin_fptr10_x86.dll (addin_fptr10_x64.dll в случае 64-битного приложения) с помощью команды regsvr32.exe. Запустил CMD под админом и указал regsvr32.exe и путь к addin_fptr10_x86.dll в дистрибутиве драйвера, т.к. более нигде его не нашел. Регистрация прошла успешно. В проекте необходимо создать объект типа ActiveX (или OLE) класса AddIn.Fptr10. Тут появилась загвоздка. Вставка элемента ActiveX не содержит сведений об Атоле. Может не так DLL зарегистрировал? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 15:08 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаманzimkon, Пока тыкаюсь как младенец. Для подключения драйвера как COM-объект необходимо зарегистрировать в системе библиотеку addin_fptr10_x86.dll (addin_fptr10_x64.dll в случае 64-битного приложения) с помощью команды regsvr32.exe. Запустил CMD под админом и указал regsvr32.exe и путь к addin_fptr10_x86.dll в дистрибутиве драйвера, т.к. более нигде его не нашел. Регистрация прошла успешно. В проекте необходимо создать объект типа ActiveX (или OLE) класса AddIn.Fptr10. Тут появилась загвоздка. Вставка элемента ActiveX не содержит сведений об Атоле. Может не так DLL зарегистрировал? У вас может Access 64bit? Может 64 битную версию драйвера надо регистрировать? А 32 битную разрегистрировать? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 15:22 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, regsvr32 для 64 bit лежит в Windows/SysWow64 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 15:30 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, и тут почитайте насчет регистрации библиотеки https://forum.windowsfaq.ru/showthread.php?t=210675 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 15:38 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkon, Большое спасибо. Сейчас проверю. Походу 7 винда х64, а офис 2010 х32. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 15:47 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
То ли я дурак, то ли лыжи не едут. Пробовал на Win7 x64 и Win10 x64, Access 2010 x64 Зарегистрировал DLL для x64 (кстати, Visual Studio не обязателен). В реестре всё видятся. Запускаю Set fptr = CreateObject("AddIn.Fptr10") выдает ActiveX component can't create object. Ни в References, ни вActiveX нет упоминания Атола. Куда еще можно капнуть? Или еще вопрос. Кто нибудь пробовал связать Атол 10 и Access? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 19:20 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманТо ли я дурак, то ли лыжи не едут. Пробовал на Win7 x64 и Win10 x64, Access 2010 x64 Зарегистрировал DLL для x64 (кстати, Visual Studio не обязателен). В реестре всё видятся. Запускаю Set fptr = CreateObject("AddIn.Fptr10") выдает ActiveX component can't create object. Ни в References, ни вActiveX нет упоминания Атола. Куда еще можно капнуть? Или еще вопрос. Кто нибудь пробовал связать Атол 10 и Access? Так может к этому всему надо ещё в References эту dll-ку добавить и потом подключить (галочкой) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 19:32 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkonШаманТо ли я дурак, то ли лыжи не едут. Пробовал на Win7 x64 и Win10 x64, Access 2010 x64 Зарегистрировал DLL для x64 (кстати, Visual Studio не обязателен). В реестре всё видятся. Запускаю Set fptr = CreateObject("AddIn.Fptr10") выдает ActiveX component can't create object. Ни в References, ни вActiveX нет упоминания Атола. Куда еще можно капнуть? Или еще вопрос. Кто нибудь пробовал связать Атол 10 и Access? Так может к этому всему надо ещё в References эту dll-ку добавить и потом подключить (галочкой) В принципе, достаточно только добавить (для CreateObject), галочку ставить необязательно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 19:48 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkonТак может к этому всему надо ещё в References эту dll-ку добавить и потом подключить (галочкой)Дело в том, что я загружал в References библиотеку addin_fptr10_x64.dll и ставил галку. Ничего не помогало. Прочитав ваш ответ, в целях эксперимента попробовал загрузить addin_fptr10_x86.dll, и о чудо: на ActiveX больше не ругается. Пробую дальше шаманить. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 19:54 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkon, спасибо за подсказки. Не сочтите за назойливость, если есть возможность можете еще оказать помощь? Связать драйвер Атола и Access получилось. Первый запрос о версии драйвера сработал успешно (MsgBox Frtr.version). Прямо как "Здравствуй мир!" ))) Не могу разобраться в том, как преобразовать пример в VBA Код: pascal 1. 2. 3. 4. 5. 6. 7.
Пробую так: Код: vbnet 1. 2. 3. 4. 5. 6. 7.
Выдает ошибку. Что делаю не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 22:02 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаманzimkon, спасибо за подсказки. Не сочтите за назойливость, если есть возможность можете еще оказать помощь? Связать драйвер Атола и Access получилось. Первый запрос о версии драйвера сработал успешно (MsgBox Frtr.version). Прямо как "Здравствуй мир!" ))) Не могу разобраться в том, как преобразовать пример в VBA Код: pascal 1. 2. 3. 4. 5. 6. 7.
Пробую так: Код: vbnet 1. 2. 3. 4. 5. 6. 7.
Выдает ошибку. Что делаю не так? Да, практически всё надо повторить один к одному: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 22:48 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Не п-понял, СЭР (м/ф Остров Сокровищ Капитан Смоллетт) у меня это выглядит так: Public sub test() Dim fptr as Object Set fptr = CreateObject ("AddIn.Fptr10") fptr.setSingleSetting(fptr.LIBFPTR_SETTING_MODEL, CStr(fptr.LIBFPTR_MODEL_ATOL_AUTO)) fptr.setSingleSetting(fptr.LIBFPTR_SETTING_PORT, CStr(fptr.LIBFPTR_PORT_COM)) fptr.setSingleSetting(fptr.LIBFPTR_SETTING_COM_FILE, 'COM5') fptr.setSingleSetting(fptr.LIBFPTR_SETTING_BAUDRATE, CStr(fptr.LIBFPTR_PORT_BR_115200)) fptr.applySingleSettings End sub и соответственно ошибка вываливается. Но хватит наверное на сегодня. Завтра на свежую голову может мысли придут) zimkon, еще раз спасибо за помощь и подсказки. Ваши советы реально помогают и выручают. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:13 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:28 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkon, я Вас вроде не хотел больше сегодня тревожить. Все таки время позднее. Сам то до полуночи буду сидеть и разбираться. Но раз Вы в сети, то можно получить комментарий к сообщению: Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола. Галочку поставил, но краснота ток и осталась. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:37 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, Попробуйте так Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:40 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман,попробуйте скобки убрать - vba синтаксис видит как вызов программы, соответственно либо Call либо без скобок. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:40 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаманzimkon, я Вас вроде не хотел больше сегодня тревожить. Все таки время позднее. Сам то до полуночи буду сидеть и разбираться. Но раз Вы в сети, то можно получить комментарий к сообщению: Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола. Галочку поставил, но краснота ток и осталась. В Object Browser можно посмотреть объекты, свойства, методы любой из подключенных библиотек и маленький help по ним ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:52 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
zimkon, ОТЛИЧНО - ошибка пропала. Хотел по аналогии преобразовать Z-отчет и проверить на кассе, но тут другой синтаксис fptr.setParam(1021, "Кассир Иванов И.") fptr.setParam(1203, "123456789047") fptr.operatorLogin fptr.setParam(fptr.LIBFPTR_PARAM_REPORT_TYPE, fptr.LIBFPTR_RT_CLOSE_SHIFT) fptr.report fptr.checkDocumentClosed Даже стыдно просить о помощи. Попробую сам разобраться. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2018, 23:59 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Не выходит каменный цветок ( Никак не могу обработать этот момент, ошибка синтаксиса. fptr.setParam (1021, "Кассир Иванов И.") Хотя в Object Browser указано Sub setParam(paramId As Long, value) т.е paramId = 1021, value ="Кассир Иванов И." В чём может быть подвох? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 12:02 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, ? Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 12:26 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Панург, Спасибо большое. Я за двое суток изучения нового драйвера Атола похоже отупел) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 12:34 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, методы нужно запускать с оператором "Call" и параметры заключать в скобки или без оператора и скобок (правило такое). Иначе выполняется действие в скобках, идёт ошибка. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 12:45 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Панург ОК, обязательно это учту. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 12:58 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, чтобы защитить себя от изменения версий и последующих грабель - лучше таки веб сервер поставить и потом менять что-то в джос запросе, а не вот так. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 13:01 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ОзверинШаман, чтобы защитить себя от изменения версий и последующих грабель - лучше таки веб сервер поставить и потом менять что-то в джсон запросе, а не вот так. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 13:02 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманЯ за двое суток изучения нового драйвера Атола похоже отупел) Да нет... просто в этот раз атол переплюнул сам себя... сейчас в новом драйвере практически ничего не осталось от старого, теперь драйвер штриха уже больше похож на старый драйвер атола чем новый атол на самого себя старого... Похоже это связано с унификацией, в исходниках есть инсталы для винды, линуха, андроида и 1С... Eсли еще и через web сервер можно чеки печатать по принципу работы с UTM егаис, то вообще шикарно (по идее можно на этот же комп поставить web атола, послать ему через тот же curl файл с чеком в utf-8 и он распечатается на ккм)... Попросил аппарат в техценте, наверно тоже начну ковырять, не думал что будет все так кардинально по другому... Тут все стонут и вздрагивают (особенно 1С) от каждой смены кодов налогов в драйвере, а уж такие-то нововведения кое кто может и не пережить... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 14:33 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманВсем привет! В связи с переходом в 2019 году Атола на 10 драйвер и отказа от ДТО 8 возникла необходимость переписать обработку пробития чеков по новым правилам. И кстати, сказанное выше не имеет никакой юридической силы (пока это только пожелания и предложения атола). Драйвер менять никто заставить не может. Львиная доля юзеров использует ДТО 8.16.3.9007. 1 С -вцы предпочитают ДТО 9. Кассы с прошивкой под 1.05ФФД работают от ДТО 8 и выше... Ну, на перспективу да... но так чтоб носиться и бить в колокола - пока наверно не стоит... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 14:47 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман vmag , web не прокатит. Много магазинов в деревнях без интернета. Сейчас буду дальше разбираться, но если есть какие мысли на эту тему - поделитесь. 1. Ну интернет то по любому нужен для передачи чеков в офд, хотя бы раз в месяц иначе касса заблокируется... 2. Для собственно печати чеков интернет не нужен, если при установке драйвера атол на машину поставить галку Web Server, то в конце (или потом) можно прикрутить этот сервер к ккм (см. рисунок). 3. Ну а потом обращаясь к этому серверу локально или по локальной сети можно отсылать ему файлы заданий, которые он будет выполнять (х,z отчеты, печать чека и т.д.) ну это я так понял и с этим тоже нужно разбираться... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 15:26 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Ну в общем не так страшен чёрт, как его малюют. Потихонечку и со скрипом начала вырисовываться ясная картинка. В какой то мере оказалось лучше чем 8 версия. Но пока это только первые впечатления. Как сделаю рабочий вариант отпишусь. Работу через Web сервер еще не смотрел. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 17:05 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Итак, подведу итог. Для работы с драйвером Атол ККТ 10 надо: 1. MS ACCESS 2010 и выше 2. Зарегистрировать в системе библиотеку addin_fptr10_x86.dll (addin_fptr10_x64.dll в случае 64-битного приложения) с помощью команды regsvr32.exe (с правами Админа). 3. В папку с программой положить addin_fptr10_x86.dll (даже если у Вас 64-битное приложение) и принудительно добавить эту библиотеку в References. Заодно выкладываю пример для VBA. В нём все основные функции кассира (без обработки ошибок). Еще раз спасибо за помощь zimkon (guest_rusimport) и Панург. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 21:34 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
P/S Перечитал топик. Вчера в запарке не увидел ответ alecko. Не удобно как то стало. Человек дело посоветовал, а я банально проглядел его ответ. alecko, отдельное спасибки за совет) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2018, 23:16 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманДля работы с драйвером Атол ККТ 10 надо: 1. MS ACCESS 2010 и выше 2. Зарегистрировать в системе библиотеку addin_fptr10_x86.dll (addin_fptr10_x64.dll в случае 64-битного приложения) с помощью команды regsvr32.exe (с правами Админа). 3. В папку с программой положить addin_fptr10_x86.dll (даже если у Вас 64-битное приложение) и принудительно добавить эту библиотеку в References. Попробовал по старинке: поставил ДТО 10.4.2 ( KKT10-10.4.2-windows32-setup.exe из инсталлятора) на W7 (32) + Офис 2003 (32), все примеры отсюда (до ккм ибо ее пока нет) пошли в лет без регистраций, копирования и добавления библиотек в референсы, думаю при наличии ккт с остальным тоже не будет проблем ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2018, 00:24 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманЗаодно выкладываю пример для VBA. В нём все основные функции кассира (без обработки ошибок). а не будет ли так любезен многоуважаемый джинн ... сделать пример в формате 2002\2003 - если возможности нет - буду искать более старшие версии для самостоятельной конвертации просто я пока для себя остановился на варианте использования 8 серии драйверов атола плюс команды нижнего уровня для новых прошивок - если честно - просто нет времени разбираться с 10-й серией и раз уж появилась такая возможность то проще будет уже идти по протоптанной дорожке... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 14:21 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Пример для 8 версии Атола взято с этой ветки 21272468 Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. 479. 480. 481. 482. 483. 484. 485. 486. 487. 488. 489. 490. 491. 492. 493. 494. 495. 496. 497. 498. 499. 500. 501. 502. 503. 504. 505. 506. 507. 508. 509. 510. 511. 512. 513. 514. 515. 516. 517. 518. 519. 520. 521. 522. 523. 524. 525. 526. 527. 528. 529. 530. 531. 532. 533. 534. 535. 536. 537. 538. 539. 540. 541. 542. 543. 544. 545. 546. 547. 548. 549. 550. 551. 552. 553. 554. 555. 556. 557. 558. 559. 560. 561. 562. 563. 564. 565. 566. 567. 568. 569. 570. 571. 572. 573. 574. 575. 576. 577. 578. 579. 580. 581. 582. 583. 584. 585. 586. 587. 588. 589. 590. 591. 592. 593. 594. 595. 596. 597. 598. 599. 600. 601. 602. 603. 604. 605. 606. 607. 608. 609. 610. 611. 612. 613. 614. 615. 616. 617. 618. 619. 620. 621. 622. 623. 624. 625. 626. 627. 628. 629. 630. 631. 632. 633. 634. 635. 636. 637. 638. 639. 640. 641. 642. 643. 644. 645. 646. 647. 648. 649. 650. 651. 652. 653. 654. 655. 656. 657. 658. 659. 660. 661. 662. 663. 664. 665. 666. 667. 668. 669. 670. 671. 672. 673. 674. 675. 676. 677. 678. 679. 680. 681. 682. 683. 684. 685. 686. 687. 688. 689. 690. 691. 692. 693. 694. 695. 696. 697. 698. 699. 700. 701. 702. 703. 704. 705. 706. 707. 708. 709. 710. 711. 712. 713. 714. 715. 716. 717. 718. 719. 720. 721. 722. 723. 724. 725. 726. 727. 728. 729. 730. 731. 732. 733. 734. 735. 736. 737. 738. 739. 740. 741. 742. 743. 744. 745. 746. 747. 748. 749. 750. 751. 752. 753. 754. 755. 756. 757. 758. 759. 760. 761. 762. 763. 764. 765. 766. 767. 768. 769. 770. 771. 772. 773. 774. 775. 776. 777. 778. 779. 780. 781. 782. 783. 784. 785. 786. 787. 788. 789. 790. 791. 792. 793. 794. 795. 796. 797. 798. 799. 800. 801. 802. 803. 804. 805. 806. 807. 808. 809. 810. 811. 812. 813. 814. 815. 816. 817. 818. 819. 820. 821. 822. 823. 824. 825. 826. 827. 828. 829. 830. 831. 832. 833. 834. 835. 836. 837. 838. 839. 840. 841. 842. 843. 844. 845. 846. 847. 848. 849. 850. 851. 852. 853. 854. 855. 856. 857. 858. 859. 860. 861. 862. 863. 864. 865. 866. 867. 868. 869. 870. 871. 872. 873. 874. 875. 876. 877. 878. 879. 880. 881. 882. 883. 884. 885. 886. 887. 888. 889. 890. 891. 892. 893. 894. 895. 896. 897. 898. 899. 900. 901. 902. 903. 904. 905. 906. 907. 908. 909. 910. 911. 912. 913. 914. 915. 916. 917. 918. 919. 920. 921. 922. 923. 924. 925. 926. 927. 928. 929. 930. 931. 932. 933. 934. 935. 936. 937. 938. 939. 940. 941. 942. 943. 944. 945. 946. 947. 948. 949. 950. 951. 952. 953. 954. 955. 956. 957. 958. 959.
и файлик от самого Атола https://www.sql.ru/forum/actualfile.aspx?id=21250866 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 15:03 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманПример для 8 версии Атола с 8-й серией драйверов проблем нет :) все давно и успешно работает, я имел ввиду изыскания по 10-й серии или пример (АТОЛ10_VBA2.zip) выложенный ранее в формате accdb тоже только для 8-х драйверов ? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 15:40 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
stu314, если правильно понял, Вам нужен пример в формате Access2003, но зачем? Он не будет работать под VBA6. Нужен минимум 7, а это MSO2010 Тут на форуме Атола обсуждали это http://forum.atol.ru/lofiversion/index.php?t35954.html Сохранить базу в формате 2000-2003 Access не дает. Прикрепляю код. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 18:47 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманОн не будет работать под VBA6. Нужен минимум 7, а это MSO2010 Тут на форуме Атола обсуждали я участвовал в том обсуждении, потом вроде писали что более правильную сборку атол сделал у меня все на 2002 аксесе, за код - отдельное спасибо, жаль только что нет формы - проще было бы разрулить :) кстати а какой аксес не дал сохранить в младшей версии ? я просто считал что это возможно ... просто с версиями более 2003 дела пока еще не имел ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 19:43 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманОн не будет работать под VBA6. сейчас проверил на 2002 хр Ваш пример - все прицепилось с драйвером атола 10.4.2 отрабатывают конструкции fptr As New Fptr10Lib.fptr и CreateObject("AddIn.Fptr10") все остальное - уже завтра если время будет - просто у меня кроме атола еще куча других - штрихи, пириты, сп-шки... поэтому и решил пока оставаться на 8-х драйверах, но на 10-х будет лучше т.к. 8-е и 9-е атол хоронит... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 20:05 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманОн не будет работать под VBA6. Нужен минимум 7, а это MSO2010 Ваш вклад в науку воистину велик (в основном как первооткрывателя), и с этим вам спасибо... но сэр не путайте народ... Все ваши проблемы от того, что вы пытаетесь пихать везде dll вместо того чтобы установить драйвер штатно, в этом случае dll сама ляжет куда нужно и как нужно... То что там у кого-то где-то что-то не получалось, так это потому, что там не было спецов типа Панурга, Константина, Алеско... Атол заявляет поддержку ОС от Win XP (см. самую первую свою ссылку в этом топике) На картинке я показываю, что вызов свойств драйвера работает и в Акцесс 2000, просто по совету Константина зашел в свойства и увидел, что showProperties это Функция, и как оказалось драйвер не любит когда ее вызывают как процедуру (чем кстати и грешит большинство юзеров) и ему некуда возвращать значение... но стоит присвоить значение переменной Long и все полетело.... Кстати чуть выше вам (как и я ранее) показывал, что это работает и в 2003.. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 20:23 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Шаман, Установите себе штатный драйвер, получите в программах приблуду как на картинке, один раз в ней настройте свойства ккм, и все проблемы исчезнут, далее будет только fptr.Open .... fptr.Close ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2018, 20:41 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Спасибо за советы. Обязательно попробую. Мне и самому под MS A2010 переделывать не очень хочется. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 01:54 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманМне и самому под MS A2010 переделывать не очень хочется. А вот это зря... Рано или поздно придется, возможно очень скоро 2003 и ниже споткнутся окончательно... 2007-2010-... тяжелее даже не вооруженным глазом, но тут уж как говориться се ля ви... Многие (из тех кто ваяет) одной ногой стоят на 2000-2003, другой на 2007 и выше... Дрова я брал отсюда (10.4.2) https://atoldriver.ru/vse-drajvera-atol-versii-10/ Это не официалы, но компоновка у них лучше чем у официалов... Установщик под винду в архиве примерно тут ...\10.4.2\installer\exe\ ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 02:40 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
stu314... жаль только что нет формы - проще было бы разрулить :) кстати а какой аксес не дал сохранить в младшей версии ? я просто считал что это возможно ... просто с версиями более 2003 дела пока еще не имел Напрямую из А10 не сохраняет в А2003. Создал пустую базу в 2000 и подгрузил форму. Только у меня так и просит ActiveX ( ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 02:40 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
vmag, спать это не про нас) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 02:43 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
ШаманТолько у меня так и просит ActiveX ( vmag правильно все расписал - юзай кошерный установщик и все будет :), а за преобразование - отдельное СПАСИБО ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 07:54 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
stu314за преобразование - отдельное СПАСИБО проверил пример, предварительно преобразовав его в формат 2002 - все корректно отрабатывает :) еще раз спасибо, меньше ковыряться придется со сменой идеологии в атоле ... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.12.2018, 10:03 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Здравствуйте. Являюсь "счастливым" обладателем онлайн кассы Атол92Ф. Пользуюсь Excel в котором с помощью VBA ещё лет 10 назад сваял прогу, которая меня полностью устраивает. Подключен чекопечатающий принтер. Теперь стоит задача подключить Атол. Как я понял из данной темы это вполне возможно. Кассу к компьютеру подключил, поставил ДККТ v.10 Подскажите идеологию, как из VBA управлять кассой? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.06.2019, 07:20 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
Добрый день. Вчера меня озадачили решением обсуждаемой проблемы. Пишу что сделал и что получилось. 1. Что использовалось. Windows 7 Pro X64, MS Access 2003. 2. Скачал драйвера для ККТ 10-ой версии У Атола - долго искать. Поэтому загуглил и нашел здесь https://support.obosobka.ru/baza-znaniy/drayver-atol-10-8-0-0-ot-13-08-2020/] Драйвер Атол 10.8.0.0 от 13.08.2020 Драйвер ККТ Атол 10.8.0.0 (x64) Драйвер ККТ Атол 10.8.0.0 (x86) 3. Установка «Драйвер ККТ Атол 10.8.0.0 (x86)». При установке драйвера выбрал ВСЕ галки. Поскольку Access 2003 – это 32 разрядное приложение, то устанавливал «Драйвер ККТ Атол 10.8.0.0 (x86)». «Драйвер ККТ Атол 10.8.0.0 (x64)» – для Access 2003 установился, но при проверке работы с Access 2003 получил сообщение об ошибке использования. Очевидно из-за не подходящей (x64) разрядности. Предполагаю, что для Access 2010 потребуется именно "Драйвер ККТ Атол 10.8.0.0 (x64)". 4. Подключение к Access - Запустил Access 2003 и создал новый файл. - Зашел в программый модуль (Alt+F11) и добавил ссылку на файл библиотеки DDL Меню \Tools\Referenses и в диалоге через кнопку «Browse…» нашел и выбрал файл C:\Program Files (x86)\ATOL\Drivers10\KKT\langs\com\ addin_fptr10_x86.dll (судя по обсуждению - это не должно вызывать затруднений) - добавление ссылки в Access прошло успешно. 5. Создал модуль и добавил код из обсуждения (два в одном). Public Sub test() Dim fptr As New fptr fptr.setSingleSetting fptr.LIBFPTR_SETTING_MODEL, CStr(fptr.LIBFPTR_MODEL_ATOL_AUTO) fptr.setSingleSetting fptr.LIBFPTR_SETTING_PORT, CStr(fptr.LIBFPTR_PORT_COM) fptr.setSingleSetting fptr.LIBFPTR_SETTING_COM_FILE, "COM5" fptr.setSingleSetting fptr.LIBFPTR_SETTING_BAUDRATE, CStr(fptr.LIBFPTR_PORT_BR_115200) fptr.applySingleSettings ' fptr.setParam 1021, "Кассир Иванов И." fptr.setParam 1203, "123456789047" fptr.operatorLogin fptr.setParam fptr.LIBFPTR_PARAM_REPORT_TYPE, fptr.LIBFPTR_RT_CLOSE_SHIFT fptr.Report fptr.checkDocumentClosed End Sub 6. Запустил на выполнение test Тест прошел без ошибок. Подсказка 1. Если используемый метод не возвращает значение (тип Sub) или вам оно не нужно, то не используйте скобки в начале “(“ и в конце “)“. Пример 1 функция параметр1, параметр2, … 2. Если возвращает (тип function), то тогда укажите переменную (объект), которой присваивается значение Пример 2 Переменная = функция (параметр1, параметр2, …) 7. И последнее. Перенос и использование остальных методов драйвера можно выполнять аналогичным способом по описанию в документации от Атола и на основании примеров для других языков программирования. Для предыдущего драйвера (версии 8) Атол давал примеры для использования в Access. Для 10-го Атол видимо посчитал, что в этом нет необходимости или ручки не дошли. На днях получу ККТ Атол 55Ф с платформой версии 5. Как раз для нее и проверю работу Access 2003 c драйвером ККТ 10 версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2020, 11:52 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
paul597368, скажите пожалуйста, какой метод отправляет чек на печать? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 01:08 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
vah, Пока не знаю. Надо лопатить документацию и проверять работу. Сейчас делаю задачу по переводу программы на Access с 8 на 10 версию драйвера ККТ. Если попадется код вывода на печать чека скину в чат. По срокам - неделя-две. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2020, 08:14 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
paul597368, Здравствуйте. Не удалось найти код вывода на печать чека? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2020, 15:03 |
|
Атол ККТ10 и VBA
|
|||
---|---|---|---|
#18+
vah, Привет. Если кратко, то - получилось. В документации Атола - Поиск "Пример использования" дан пример, который я переложил на Access 2003. Предварительно. 1. На ПК должен быть установлен драйвер 10-й версии 32-х разрядный. 2. ККМ подключен к ПК. 3. Убедиться в том, что все подготовлено можно запустив программу "Тест драйвера ККТ (32-bit)", в ней выберите кнопку 'свойства' и выполнить поиск устройства и проверку связи. Затем 1. В файле mdb (Access) создайте таблицу с именем t_kkm и в ней два поля с именами и типами f_id - числовой f_Settings - Поле МЕМО В таблицу добавьте запись с f_id = 0. 2. Создайте модуль и вставьте в него текст программы Option Compare Database Option Explicit '#include "fptr10.h" Dim p_kkm As New Fptr 'Function f_main(argc As Integer, argv As String) As Integer Sub f_main_test() '// Создание и настройка драйвера Call f_initialize '// Соединение с ККТ p_kkm.Open '// Регистрация кассира p_kkm.setParam 1021, "Иванов И.И." p_kkm.setParam 1203, "500100732259" p_kkm.operatorLogin '// Открытие чека (с передачей телефона получателя) p_kkm.setParam p_kkm.LIBFPTR_PARAM_RECEIPT_TYPE, p_kkm.LIBFPTR_RT_SELL p_kkm.setParam 1008, "+79161234567" p_kkm.openReceipt '// Регистрация позиции p_kkm.setParam p_kkm.LIBFPTR_PARAM_COMMODITY_NAME, "Чипсы LAYS" p_kkm.setParam p_kkm.LIBFPTR_PARAM_PRICE, 73.99 p_kkm.setParam p_kkm.LIBFPTR_PARAM_QUANTITY, 5 p_kkm.setParam p_kkm.LIBFPTR_PARAM_TAX_TYPE, p_kkm.LIBFPTR_TAX_VAT18 'Также в данном методе можно передать следущие реквизиты ФН: p_kkm.setParam 1212, 1 'Признак предмета расчета p_kkm.setParam 1214, 7 'Признак способа расчета p_kkm.Registration '// Регистрация позиции: конец '// Регистрация итога (отбрасываем копейки) p_kkm.setParam p_kkm.LIBFPTR_PARAM_SUM, 369# p_kkm.receiptTotal '// Оплата наличными p_kkm.setParam p_kkm.LIBFPTR_PARAM_PAYMENT_TYPE, p_kkm.LIBFPTR_PT_CASH p_kkm.setParam p_kkm.LIBFPTR_PARAM_PAYMENT_SUM, 1000 p_kkm.Payment '// Закрытие чека p_kkm.closeReceipt If (p_kkm.checkDocumentClosed < 0) Then '// Не удалось проверить состояние документа. Вывести пользователю текст ошибки, попросить устранить неполадку и повторить запрос MsgBox p_kkm.errorDescription, vbExclamation, "f_main" End If If p_kkm.getParamBool(p_kkm.LIBFPTR_PARAM_DOCUMENT_CLOSED) = 0 Then '// Документ не закрылся. Требуется его отменить (если это чек) и сформировать заново p_kkm.cancelReceipt Exit Sub End If If (p_kkm.getParamBool(p_kkm.LIBFPTR_PARAM_DOCUMENT_PRINTED) = 0) Then '// Можно сразу вызвать метод допечатывания документа, он завершится с ошибкой, если это невозможно If (p_kkm.continuePrint() < 0) Then '// Если не удалось допечатать документ - показать пользователю ошибку и попробовать еще раз. MsgBox "Не удалось напечатать документ (Ошибка " & vbCrLf & _ p_kkm.errorDescription & vbCrLf & _ "). Устраните неполадку и повторите.", vbExclamation, "f_main" End If End If '// Получение информации о чеке из ФН p_kkm.setParam p_kkm.LIBFPTR_PARAM_FN_DATA_TYPE, p_kkm.LIBFPTR_FNDT_LAST_DOCUMENT p_kkm.fnQueryData Dim fiscalSign fiscalSign = p_kkm.getParamStr(p_kkm.LIBFPTR_PARAM_FISCAL_SIGN) Dim documentNumber As Integer documentNumber = p_kkm.getParamInt(p_kkm.LIBFPTR_PARAM_DOCUMENT_NUMBER) '// Формирование слипа ЕГАИС p_kkm.beginNonfiscalDocument p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT, "ИНН: 111111111111 КПП: 222222222" p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.printText p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT, "КАССА: 1 СМЕНА: 11" p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.printText p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT, "ЧЕК: 314 ДАТА: 20.11.2017 15:39" p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.printText p_kkm.setParam p_kkm.LIBFPTR_PARAM_BARCODE, " https://check.egais.ru?id=cf1b1096-3cbc-11e7-b3c1-9b018b2ba3f7" p_kkm.setParam p_kkm.LIBFPTR_PARAM_BARCODE_TYPE, p_kkm.LIBFPTR_BT_QR p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.setParam p_kkm.LIBFPTR_PARAM_SCALE, 500 p_kkm.printBarcode p_kkm.printText p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT, " https://check.egais.ru?id=cf1b1096-3cbc-11e7-b3c1-9b018b2ba3f7" p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT_WRAP, p_kkm.LIBFPTR_TW_CHARS p_kkm.printText p_kkm.printText p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT, _ "10 58 1c 85 bb 80 99 84 40 b1 4f 35 8a 35 3f 7c " & _ "78 b0 0a ff cd 37 c1 8e ca 04 1c 7e e7 5d b4 85 " & _ "ff d2 d6 b2 8d 7f df 48 d2 5d 81 10 de 6a 05 c9 " & _ "81 74" p_kkm.setParam p_kkm.LIBFPTR_PARAM_ALIGNMENT, p_kkm.LIBFPTR_ALIGNMENT_CENTER p_kkm.setParam p_kkm.LIBFPTR_PARAM_TEXT_WRAP, p_kkm.LIBFPTR_TW_WORDS p_kkm.printText p_kkm.endNonfiscalDocument '// Z-отчет p_kkm.setParam p_kkm.LIBFPTR_PARAM_REPORT_TYPE, p_kkm.LIBFPTR_RT_CLOSE_SHIFT p_kkm.Report '// Получение информации о неотправленных документах p_kkm.setParam p_kkm.LIBFPTR_PARAM_FN_DATA_TYPE, p_kkm.LIBFPTR_FNDT_OFD_EXCHANGE_STATUS p_kkm.fnQueryData ' uint Dim unsentCount As Integer unsentCount = p_kkm.getParamInt(p_kkm.LIBFPTR_PARAM_DOCUMENTS_COUNT) Dim unsentFirstNumber As Integer unsentFirstNumber = p_kkm.getParamInt(p_kkm.LIBFPTR_PARAM_DOCUMENT_NUMBER) Dim unsentDateTime As String unsentDateTime = p_kkm.getParamStr(p_kkm.LIBFPTR_PARAM_DATE_TIME) '// Завершение работы p_kkm.Close End Sub Private Sub f_initialize() ' date: 12.09.2020: МПИ ' desc: инициализация объекта Dim t As DAO.Recordset Dim settings As String, s As String Dim i As Long, b_new As Boolean On Error Resume Next settings = "" b_new = False ' читаем, что есть у нас Set t = CodeDb().OpenRecordset("t_kkm") settings = Nz(t!f_settings, "") ' параметры еще не заданы If settings = "" Then ' открываем диалог для поиска устройства и проверки связи _ и получаем настройки, которые сохраняем в поле таблицы s = f_getSettings() If s = "" Then Exit Sub Else ' вернули что-то новенькое b_new = True settings = s End If End If ' далее проверяем загружаем их в драйвер i = p_kkm.SetSettings(settings) ' If i <> 0 Then MsgBox "Ошибка загрузки данных." & vbCrLf & p_kkm.errorDescription, vbCritical, "Подключение к ККТ" Exit Sub End If ' Данные загружены, делаем попытку подключения к ККТ Call p_kkm.Open Select Case p_kkm.isOpened Case True p_kkm.Beep ' p_kkm.Close Case Else MsgBox "Ошибка подключения." & vbCrLf & p_kkm.errorDescription, vbCritical, "Подключение к ККТ" Exit Sub End Select ' новенькое прошло тест -> сохраняем у себя If b_new Then t.Edit t!f_settings = settings t.Update End If End Sub Private Function f_getSettings() As String ' date: 12.09.2020: МПИ ' desc: открываем диалог по определению параметров Dim settings As String Dim long1 As Long ' открываем диалог для поиска long1 = p_kkm.ShowProperties(p_kkm.LIBFPTR_GUI_PARENT_NATIVE, Application.hWndAccessApp) Select Case long1 '0, если пользователь нажал кнопку OK. Case 0 ' сохраняем параметры для последующего использования settings = p_kkm.getSettings '-1, если открыть диалог не удалось ' 1, если пользователь покинул диалог любым другим способом (нажал кнопку Отмена, закрыл диалог крестиком, т.п.) Case Else 'используем параметры без изменения settings = "" End Select f_getSettings = settings End Function 3. Выполните компиляцию модуля - для проверки на наличие ошибок 4. Запустите f_main_test() ... |
|||
:
Нравится:
Не нравится:
|
|||
21.09.2020, 19:06 |
|
|
start [/forum/topic.php?all=1&fid=45&tid=1609929]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
77ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 176ms |
0 / 0 |