|
Атол ККТ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 |
|
|
start [/forum/topic.php?fid=45&msg=39741645&tid=1609929]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
76ms |
get tp. blocked users: |
2ms |
others: | 252ms |
total: | 413ms |
0 / 0 |