Находится в процессе разработки
Данная внешняя компонента предназначена для интеграции POS-терминалов (эквайринговых терминалов) с платформой 1С:Предприятие 8.3. Компонента реализует взаимодействие с терминалами по протоколу ECR (электронный кассовый регистратор) от PrivatBank, основанному на формате JSON.
Подключаемая компонента соответствует стандарту "Требования к разработке драйверов подключаемого оборудования", версия 4.4, и обеспечивает полный набор методов для интеграции с решениями 1С.
- ✅ Поддержка протокола ECR от PrivatBank
- 📝 Обмен данными в формате JSON
- 🔗 Совместимость с платформой 1С:Предприятие 8.3
- 💡 Поддержка ключевых методов для интеграции с POS-терминалами
- 🛡 Подробная обработка ошибок и логирование событий
- 🌐 Поддержка локализации интерфейса
Конфигурация | Версия конфигурации | Версия БПО | Требуемая версия стандарта |
---|---|---|---|
BAS SmallBusiness | 1.6.X.X | 2.1.6.16 | 3.4 |
BAS Управление торговлей | 3.5.X.X | 2.1.3.9 | 3.2 |
BAS ERP | 2.5.X.X | 2.1.3.9 | 3.2 |
- ICU Package:
74.2 static
- Boost:
1.87
- pugixml:
1.15
- Windows (Server) x64: версии 7–11, 2019–2022
- Ubuntu x64: версия 22.04
- Debian x64: последние стабильные релизы
- macOS: последние стабильные релизы
Для инициализации драйвера необходимо создать экземпляр класса:
ПодключитьВнешнююКомпоненту({полный путь}+"\ECR_Driver_PT_win64.dll", "Driver", ТипВнешнейКомпоненты.Native);
ОбъектДрайвера = Новый("AddIn.Driver.ECRDriverPOS");
- в процессе разработки
- в процессе разработки
Логирование ключевых событий и ошибок производится в указанный каталог логов, который задается при инициализации драйвера.
Эта утилита позволяет автоматизированное тестирование компонентов AddIn для 1С:Предприятие 8. Она использует формат скриптов (.testscript
) для определения тестов, включая вызовы процедур и функций с параметрами и ожидаемыми результатами.
Тестовые скрипты пишутся в формате ini
и имеют расширение .testscript
.
# Название теста
[Test]
Name = "Тестирование подключения POS Terminal Privat JSON"
# Вызовы
# Формат: CallAsFunc <ИмяФункции> | <Количество параметров> | <Параметр0> | <Параметр1> | ... | <ПеременнаяРезультата>, Возможны пустые параметры | |
# Формат: CallAsProc <ИмяПроцедуры> | <Количество параметров> | <Параметр0> | <Параметр1> | ... Возможны пустые параметры | |
[Execute]
CallAsFunc = ПолучитьРевизиюИнтерфейса | 0 | result1
CallAsFunc = ПолучитьОписание | 1 | | result2
CallAsFunc = ПолучитьПараметры | 1 | | result3
CallAsFunc = УстановитьПараметр | 2 | Address | "127.0.0.1" | result4
CallAsFunc = УстановитьПараметр | 2 | Port | 2000 | result5
CallAsFunc = УстановитьПараметр | 2 | ConnectionType | 0 | result6
CallAsFunc = УстановитьПараметр | 2 | LogLevel | 1 | result7
CallAsFunc = УстановитьПараметр | 2 | Facepay | false | result8
CallAsFunc = Подключить | 1 | | statusConnect
CallAsFunc = Отключить | 1 | statusConnect[0] | statusDisconnect
testaddin file_name.dll --deviceType POSTerminal --script my_test.testscript
- Процедуры вызываются в указанном порядке с переданными параметрами.
- Функции выполняются, а их результаты сохраняются в переменные для дальнейшей проверки (пока не сохраняются, но будут).
- Клонируйте репозиторий:
git clone https://github.com/d0codesoft/AddInECRDriver.git
- Соберите проект mkdir build && cd build && cmake ..
- Запустите тесты с помощью
testaddin
.
Приветствуются предложения и pull request'ы для улучшения утилиты!
Проект лицензирован под лицензией MIT. Подробности смотрите в файле LICENSE.
Разработка: SCODE