Two or more anchor identifiers match each others. One of them will be modified. This error happens when some anchor identifiers are generated automatically and others are predefined. Or both are predefined and the operator made a mistake (maybe a copy & paste?)

 

 

 

 

 

 

Описание интеграции iiko и Абонемент / Shelter

Структурная схема

 

Структура взаимодействия модулей и программ

iiko при оплате на специальным платежом обращается к Connecter, который обращается к ShelterConnect.dll, которая работает с базой данных Абонемент.

Используемые версии ПО:

  • Версия ПО Абонемент: 1.134
  • Версия Connecter: 1.64
  • Версия iiko: 5.5 

Лицензирование

Команды для закрытия из iiko защищены ключом, необходимо иметь проект 2 модуль 12 в используемом ключе защиты.

Необходимые файлы в папке с Connecter.exe

  • SCRK6530.dll
  • ShelterConnect.dll
  • ShelterConnect.ini

Используются те же файлы, что и при интеграции с RKeeper 7, доступны тут

Настройки iiko

Выполняются специалистами, устанавливающими iiko (https://ru.iiko.help/articles/#!special-iiko/ucsshelter)

 

Настройки Connecter

  1. Выполнить стандартные настройки connecter
  2. connecter Должен быть настроен на БД, в которую будет осуществляться закрытие
  3. В секции [Charset] необходимо установить параметр UseUrlEncode=0
  4. Настроить секцию [HotelInterface]
    [HotelInter face]
    HotelInterFaceDllname=D:\connecter\SCRK6530.dll
    enabled=1
    FolioMask=0

Настройки ShelterConnect

[Database]
dbname=%Путь до БД Абонемент%
DBuser     = UCS
DBpassword = oQKH8n0BFUE=

[ExternalClient]
  ClientID      = 1
  IdentPhysType = 200
  ConvertOperationNeed = 1
  ToOEM = 1
  NeverRestrictTransaction = 1
  FolioMask = $04
  ShowBalance = 1
  ShowBalanceFirst = 1
[log]
  FileName   = ShelterConnect.log
  Level      =  40    
  DebugLevel =  40

[GarbageCollector]
  Enabled  = 0
  LifeTime = 120

[SCRK6]
  UseDetails = 0
  AlcoholicOperation =999;
  Messages =SCRK6.eng.msg
  UseScreenHeader0 =0
  UseScreenHeader1 =0
  UseScreenSequelCode =0
  ShowBalance = 1
  ShowBalanceFirst = 1
  ShowBalanceEverywhere = 1
  UseSuperDetails = 1
  RoomInfoMode = 3

[PARAMS]
  NoAutoDiscount = 1
  Section =0
  UseSection =1

[TranslateOperation]
; ЧТО_ПРИХОДИТ_ИЗ_iiko=КОД_УСЛУГИ_В_АБОНЕМЕНТЕ
     1=301

[TranslatePayment]
  1111 = 70996,НАЛ

 

Реализованный функционал

Кейс Результат
Закрытие по номеру ФОЛИО После ввода номера фолио в iiko отображается гость, администратор визуально идентифицирует его по фотографии и подтверждает. Заказ закрывается, на фолио гостя начисляется услуга. При просмотре внешнего чека можно увидеть подробную информацию о заказе.
Закрытие на номер по номеру карты гостя После ввода номера карты гсотя/считывания карты гостя в iiko отображается гость, администратор визуально идентифицирует его по фотографии и подтверждает. Заказ закрывается, на фолио гостя начисляется услуга. При просмотре внешнего чека можно увидеть подробную информацию о заказе.
Закрытие по номеру карты поселения После ввода номера карты поселения/считывания карты поселения в iiko отображается гость, администратор визуально идентифицирует его по фотографии и подтверждает. Заказ закрывается, на фолио гостя начисляется услуга. При просмотре внешнего чека можно увидеть подробную информацию о заказе.
Закрытие по номеру комнаты После ввода номера комнаты в iiko отборажается проживающий в ней гость, администратор визуально идентифицирует его по фотографии и подтверждает. Заказ закрывается, на фолио поселения начисляется услуга. При просмотре внешнего чека можно увидеть подробную информацию о заказе.
Закрытие на незаселенный номер После ввода номера в iiko отбражается соответствующая ошибка.
Закрытие на номер комнаты с несколькими проживающими После ввода номера комнаты в iiko отборажаетсясписок проживающих в ней гостей. Если проживающие заселены местами и у каждого собственное фолио, то заказ будет закрыт на фолио поселения выбранного гостя, иначе - на общее фолио поселения.
Закрытие с разными TRANSACTION_ID В iiko есть возможность настроить передачу различных TRANSACTION_ID для начисления разных услуг на фолио, например "Бар" и "Кухня". Как настроить необходимо уточнять у специалистов iiko.
Отмена чека При отмене чека создается соответствующая корректирующая транзакция на целевом фолио.
Закрытие на фолио с недостатком баланса При попытке закрыть заказ iiko сообщает об ошибке
Закрытие со скидкой При закрытии чека со скидкой можно увидеть соответствующую информацию (полную стоимость, сумму и название примененной скидки) при просмотре внешнего чека.

 

Недочеты, которые будут устранены в ближайшее время: при нехватке средств на фолио, ошибка не отображается в читабельном виде, вместо нее отображается "SCRK6/6.0.1: Ok".

Просмотр внешнего чека (Shelter)

Для просмотра внешнего чека используется rk6check.fr3 (включена в базовую поставку Shelter актуальных версий).
Для корректного отображения содержимого чека iiko необходимо :
1. В ..\Firebird\udf\ скопировать shrk6udf.dll и shrk6udf.ini (эти файлы можно найти в базовой поставке FullVersion актуальных версий)
2. В shrk6udf.ini настроить так : 

[heap]
oemtochar=1
[CheckXML]
decodeType=0

3. Перезапустить службы FireBird, выполнить закрытие на номер, проверить результат.