powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Атол ККТ10 и VBA
25 сообщений из 59, страница 1 из 3
Атол ККТ10 и VBA
    #39741629
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
В связи с переходом в 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С сделано.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741639
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
Я бы здесь попробовал спросить http://forum.atol.ru/index.php?showtopic=34345&st=0&p=262827entry262827
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741645
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Атоловский форум излазил вдоль и поперек. К сожалению, ответ примерно такой http://forum.atol.ru/index.php?s=&showtopic=34374&view=findpost&p=267025
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741654
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741658
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ШаманВсем привет!
В связи с переходом в 2019 году Атола на 10 драйвер и отказа от ДТО 8 возникла необходимость переписать обработку пробития чеков по новым правилам.

- Мне в последнее время атол мало нравится, то налоги тасуют от версии к версии, то коды оплаты...
- Здается мне нужно рыть в альтернативу (по твоей же ссылке) в сторону веб сервера
Для интеграции, помимо драйвера ККТ, можно использовать основанные на нем приложения:
Android Service
Web-сервер

http://integration.atol.ru/#web-server
Как UTM работает ты уже знаешь, тут тоже обмен файлами в кодировке UTM-8, минимальная платформа от Windows XP...
Я так понимаю можно поднять атоловский веб сервер с кассой и посылать в него чеки отовсюду...
Если честно, я пока не в курсе, просто прочитал твою статью... ну и по любому нужен аппарат с 10 прошивкой
Ну и на самый крайняк - есть старый, добрый и проверенный Штрих...
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741666
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Упс. Я затупил.
Не добавил в надежное расположение исполняемый файл и команды просто не выполнялись.
Исправил. Теперь вывалился запрос ActiveX. Ищу где он в А2010 включается (ранее работал только с 2003-2007).
zimkon (guest_rusimport) теперь я понял почему не выполнялся мой код.
vmag , web не прокатит. Много магазинов в деревнях без интернета.
Сейчас буду дальше разбираться, но если есть какие мысли на эту тему - поделитесь.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741673
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ШаманУпс. Я затупил.
Не добавил в надежное расположение исполняемый файл и команды просто не выполнялись.
Исправил. Теперь вывалился запрос 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.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741680
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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 зарегистрировал?
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741689
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман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 битную разрегистрировать?
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741692
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
regsvr32 для 64 bit лежит в Windows/SysWow64
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741695
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
и тут почитайте насчет регистрации библиотеки https://forum.windowsfaq.ru/showthread.php?t=210675
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741700
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zimkon,
Большое спасибо. Сейчас проверю. Походу 7 винда х64, а офис 2010 х32.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741739
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То ли я дурак, то ли лыжи не едут.
Пробовал на 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?
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741740
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-ку добавить и потом подключить (галочкой)
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741741
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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), галочку ставить необязательно.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741742
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zimkonТак может к этому всему надо ещё в References эту dll-ку добавить и потом подключить (галочкой)Дело в том, что я загружал в References библиотеку addin_fptr10_x64.dll и ставил галку. Ничего не помогало.
Прочитав ваш ответ, в целях эксперимента попробовал загрузить addin_fptr10_x86.dll, и о чудо: на ActiveX больше не ругается.
Пробую дальше шаманить.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741769
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zimkon, спасибо за подсказки. Не сочтите за назойливость, если есть возможность можете еще оказать помощь?
Связать драйвер Атола и Access получилось.
Первый запрос о версии драйвера сработал успешно (MsgBox Frtr.version). Прямо как "Здравствуй мир!" )))
Не могу разобраться в том, как преобразовать пример в VBA
Код: pascal
1.
2.
3.
4.
5.
6.
7.
begin
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_MODEL, IntToStr(fptr.LIBFPTR_MODEL_ATOL_AUTO));
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_PORT, IntToStr(fptr.LIBFPTR_PORT_COM));
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_COM_FILE, 'COM5');
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_BAUDRATE, IntToStr(fptr.LIBFPTR_PORT_BR_115200));
    fptr.applySingleSettings;
end;


Пробую так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
private sub test()
Dim setSingleSetting As String
With setSingleSetting
.fptr.LIBFPTR_SETTING_MODEL = nz([моё_значение], fptr.LIBFPTR_MODEL_ATOL_AUTO)
.fptr.LIBFPTR_SETTING_COM_FILE = "COM5"
End With
End sub

Выдает ошибку. Что делаю не так?
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741779
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаманzimkon, спасибо за подсказки. Не сочтите за назойливость, если есть возможность можете еще оказать помощь?
Связать драйвер Атола и Access получилось.
Первый запрос о версии драйвера сработал успешно (MsgBox Frtr.version). Прямо как "Здравствуй мир!" )))
Не могу разобраться в том, как преобразовать пример в VBA
Код: pascal
1.
2.
3.
4.
5.
6.
7.
begin
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_MODEL, IntToStr(fptr.LIBFPTR_MODEL_ATOL_AUTO));
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_PORT, IntToStr(fptr.LIBFPTR_PORT_COM));
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_COM_FILE, 'COM5');
    fptr.setSingleSetting(fptr.LIBFPTR_SETTING_BAUDRATE, IntToStr(fptr.LIBFPTR_PORT_BR_115200));
    fptr.applySingleSettings;
end;


Пробую так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
private sub test()
Dim setSingleSetting As String
With setSingleSetting
.fptr.LIBFPTR_SETTING_MODEL = nz([моё_значение], fptr.LIBFPTR_MODEL_ATOL_AUTO)
.fptr.LIBFPTR_SETTING_COM_FILE = "COM5"
End With
End sub

Выдает ошибку. Что делаю не так?
Да, практически всё надо повторить один к одному:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
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
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741785
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не п-понял, СЭР (м/ф Остров Сокровищ Капитан Смоллетт)
у меня это выглядит так:

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, еще раз спасибо за помощь и подсказки. Ваши советы реально помогают и выручают.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741789
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741790
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zimkon, я Вас вроде не хотел больше сегодня тревожить. Все таки время позднее.
Сам то до полуночи буду сидеть и разбираться.
Но раз Вы в сети, то можно получить комментарий к сообщению:
Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола.
Галочку поставил, но краснота ток и осталась.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741791
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаман,
Попробуйте так
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
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
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741792
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шаман,попробуйте скобки убрать - vba синтаксис видит как вызов программы, соответственно либо Call либо без скобок.
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741793
zimkon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шаманzimkon, я Вас вроде не хотел больше сегодня тревожить. Все таки время позднее.
Сам то до полуночи буду сидеть и разбираться.
Но раз Вы в сети, то можно получить комментарий к сообщению:
Поставьте галку на DLL-ке Атола в References и посмотрите правильный синтаксис метода setSingleSetting в Object Browser редактора VBA для подключенной библиотеки Атола.
Галочку поставил, но краснота ток и осталась.
В Object Browser можно посмотреть объекты, свойства, методы любой из подключенных библиотек и маленький help по ним
...
Рейтинг: 0 / 0
Атол ККТ10 и VBA
    #39741795
Шаман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
Даже стыдно просить о помощи. Попробую сам разобраться.
...
Рейтинг: 0 / 0
25 сообщений из 59, страница 1 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Атол ККТ10 и VBA
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]