INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Баданов Владимир | Старший программист | 1С-Коннект

«Роль платформы 1С:Предприятие в сервисе 1С-Коннект»

- Сервис 1С-Коннект использует почти вся партнерская сеть 1С: 500 тыс. пользователей, 120+ тыс. ежедневно, рост трафика 2+ раза ежегодно. - Используемые продукты и технологии: xmpp, erlang, go, python, rabbitMQ, телефония, туннелирование, 4 СУБД: 1С: Предприятие (PostgreSQL+MSSQL), PostgreSQL, REDIS, MongoDB, описание ролей. - Администрирование сервиса осуществляется через конфигурацию 1С: написана с нуля, эксплуатация как SaaS, на одном сервере, без использования БСП, регламентные задания, PUSH-Sync, PartnerAPI, рассылки, отчёты. - Нагрузка, размер БД, способы оптимизации запросов: используем отбор по индексам, виртуальные таблицы, СКД в динамических списках, регистры сведений, разделение ИБ не используем. - RLS пережил два поколения. Система доступа оперирует сотней микро-ролей и назначает только нужные. - Интеграция: взаимодействие с другими частями инфраструктуры, API, проблемы первой версии, найденные решения - журналирование, ограничения на вызовы, гибкие входные параметры, пакетные вызовы. - Цикл производства: параллельная разработка выпусков. Ручное тестирование и автотесты (сценарные + API), обновление через механизм поставок, EDT+GIT. Трекер.

Настройка эквайринговых систем INPAS Smart Sale для работы в конфигурации 1С:Розница 1.0

Оборудование - Терминал сбора данных

8
Подключение торгового оборудования иной раз способно вызвать нешуточные трудности, особенно когда его поставщик сам плохо представляет процесс подключения. Традиционно проблемным оборудованием являются системы эквайринга, технические специалисты банка обычно плохо знакомы с товароучетными системами, а обслуживающие их специалисты, в свою очередь, мало знакомы с банковским оборудованием. В очередной раз столкнувшись с подобными сложностями мы решили обобщить свой опыт в данной статье.

Системы эквайринга отличаются от остального торгового оборудования более высокой сложностью. Если большинство устройств подразумевает преимущественно односторонний обмен данными с товароучетной системой, то в случае с эквайриногом мы должны полноценно взаимодействовать со сторонним программно-аппаратным комплексом, куда, кроме собственно пинпада, входит и система процессинга банка.

Рассмотрим схему взаимодействия подробнее. Перед этим также советуем освежить знания о том, как работает торговое оборудование, прочитав статью: Автоматизируем розницу. Часть 2 - Торговое оборудование.

Пробив на кассе покупки и предъявив кассиру банковскую карту, покупатель запускает целую цепочку событий. Кассир нажимает клавишу безналичной оплаты, которая в свою очередь вызывает соответствующую обработку, передающую подключенному оборудованию - пинпаду - данные о покупке, в частности сумму к оплате.

Приняв эти данные, пинпад предлагает считать магнитную полосу карты или вставить ее чипом в ридер. Получив данные карты покупателя, пинпад связывается с процессингом банка и передает их туда, вместе с суммой и прочей информацией о покупке. Процессинг, в зависимости от настроек и правил обслуживания карт, может запросить дополнительную авторизацию по пин-коду, после чего анализирует информацию на предмет возможности осуществления покупки по данной карте. В зависимости от результата пинпаду направляется положительный или отрицательный ответ.

Результат обработки данных процессингом пинпад передает назад товароучетной системе, которая или пробивает чек, или печатает слип с причиной отказа. В случае отсутствия связи с процессингом пинпад также выдает отказ.

Такая схема работы коренным образом отличается от схемы работы остального торгового оборудования, большая часть которого способна работать как стандартный тип оборудования, а фирменные драйвера и обработки позволяют реализовать дополнительный функционал, или вообще работать как совместимая модель, с частичной потерей реализуемых возможностей. Несовпадение версий драйверов и обработок также, в большинстве случаев, выдаст только предупреждение. С эквайриногом малейшее несовпадение или несостыковка элементов между собой приводит к полной неработоспособности системы.

По популярности и распространенности система INPAS Smart Sale уступает, пожалуй, только Сбербанку, который, надо признать, является еще и самым беспроблемным в техническом плане. С INPAS все обстоит сложнее, сама компания разрабатывает только программно-аппаратный комплекс для реализации эквайринговых систем, а забота о конечных внедрениях ложится на плечи сотрудников техподдержки банков. Вот здесь и начинается самое интересное.

В этот раз нам предстояло подключить к кассовому узлу под управлением 1С:Розница 1.0 пинпад популярной модели Verifone Vx810 от банка Уралсиб. Собственно, подключение оборудования проблем не вызвало, пинпад подключается к кассовому узлу через интерфейсc RS-232 (COM-порт) или USB с программной эмуляцией RS-232, также следует подключить пинпад к локальной сети и настроить ему доступ в интернет.

На этом успехи закончились. Далее сотрудник банка попытался запустить некую самописную программу, которая якобы должна проанализировать программы и оборудование и выдать список необходимых к установке драйверов и компонентов. Но программа захотела установленный MS Excel и работать отказалась... В папке с ней мы нашли электронную таблицу, которая содержала таблицу соответствия товароучетного ПО и компонентов INPAS, та ее часть, что касалась 1С, способна была вызвать у любого 1С-ника дикий шок. При живом общении также выяснилось, что сотрудники банка откровенно путают версии конфигураций и выпуски платформы, а по поводу обработки обслуживания пояснили что-то невнятное, типа 1С это сама скачает со своего сайта и это бесплатно.

В общем стало понятно, что пора брать ситуацию в свои руки. Как показало вдумчивое изучение доступной документации - все не так сложно, как кажется. Разработчик предоставляет все необходимые инструменты, а то, как их используют на практике оставим на совести работников техподдержки банков.

Чтобы скачать необходимые компоненты посетим сайт поддержки INPAS и перейдем в раздел Свободно распр. ПО, который ведет на FTP-сервер компании, где нас интересует директория 1. Integrirovannye kassovye resheniya. Здесь находим и скачиваем два компонента: Vneshnaa obrabotka dlya 1C.rar и DUALConnector 1.1.3.rar.

Распаковав архив с Vneshnaa obrabotka dlya 1C.rar, установим компоненту Dual Connector 1C и прейдем в папку с установленной программой.

Из содержимого нам интересны два файла: обработка обслуживания InpasDualConnector81_v1.epf, скопируйте ее в любое удобное место, и библиотека a_inpasDC1c83.dll, которую зарегистрируйте командой:

regsvr32 "C:\Program Files\Dual Connector 1C\a_inpasDC1c83.dll"

Обработку обслуживания необходимо сконвертировать, для этого запустите 1С в режиме конфигуратора и откройте обработку через меню Файл - Открыть, согласившись с предложением конвертации.

Таким образом мы установим драйвер ТО и подготовим обработку обслуживания, т.е. выполним все необходимые действия для платформы 1С:Предприятие. Но не будем забывать, что эквайринг - сложный программно-аппаратный комплекс, а не просто очередной экземпляр торгового оборудования и для взаимодействия, с ним нужны свои программные компоненты. Поэтому распаковываем второй скачанный архив DUALConnector 1.1.3.rar и устанавливаем Dual Connector, это непосредственно модуль для работы с комплексом INPAS Smart Sale, не следует путать его с установленным нами ранее пакетом Dual Connector 1C, который содержит только компоненты для интеграции с 1С.

Также можно воспользоваться универсальным пакетом Connectors Install 1.1.3.rar, который обычно имеется у сотрудников поддержки банка, установив оттуда нужный нам компонент Dual Connector (не путать со Smart Connector, который могут рекомендовать сотрудники банка).

Теперь запускаем 1С:Розница и переходим к Помощнику подключения и настройки торгового оборудования, где выбираем Эквайринговую систему.

Следующим шагом выбираем Добавить новую обработку обслуживания.

Указываем каталог, где находится сконвертированная обработка и нажимаем Получить список, ниже должна появиться Inpas Dual Connector: Эквайринговая система, выбираем ее и жмем Далее.

На следующем экране подтверждаем добавление нового устройства и переходим к его настройкам:

  • ИД терминала - идентификатор пинпада, следует посмотреть в его настройках или узнать у сотрудника банка.
  • Порт - номер COM-порта к которому подключен пинпад.
  • Скорость - оставляем по умолчанию 115 200.
  • Код валюты - по умолчанию в обработке стоит старый код 810, новый код рубля - 643, что именно нужно поставить уточняем у сотрудника банка.
  • Ширина слипа - ширина ленты фискального регистратора на котором будут печататься слипы.

Оставшиеся две галочки устанавливаются по согласованию с сотрудником банка.

Если все сделано правильно, то по нажатию кнопки OK, обработка свяжется с пинпадом, тот проверит связь и правильность настроек с процессингом банка и оборудование будет полностью готово к работе.

Несмотря на то, что в нашем примере рассматривалась конфигурация 1С:Розница 1.0, данная инструкция с некоторыми уточнениями применима также к конфигурации 1С:Управление торговлей 10.3.

Автор: Уваров А.С.  

8

См. также

Комментарии
Сортировка: Древо
1. aspirator23 373 07.08.15 14:29 Сейчас в теме
Может не повезло с работниками банка. В нормальных банках техподдержка знает эти терминалы и знает как с ними работать. Обычно они плотно контактируют с инпасом и тот тоже оперативно реагирует на вопросы.
Дополню статью: Кроме Дуалконнектора для 810 подходит также Пульсар. Он также несложно настраивается и работал тогда, когда еще не было дуалконнектора. Пульсар может немного сложнее. Но в работе более удобный так полностью доступен для управления, ведет расширенное логирование, намного более подробное чем дуалконнектор.
2. oldcopy 64 07.08.15 17:43 Сейчас в теме
(1) aspirator23, С Пульсаром проще, для него стандартная обработка от 1С есть, но сколько сталкивались - наши банки через него не работают, говорят что устарел. Только Дуал или СмартКоннектор.

А с банковскими работниками у нас везде так. Терминалы то они знают, а вот в 1С откровенно плавают, обычно они приезжают настраивают терминал, а мы подключаем его к 1С.
3. aspirator23 373 08.08.15 15:00 Сейчас в теме
(2)
.... обычно они приезжают настраивают терминал, а мы подключаем его к 1С. ...
Подпишусь :)
4. Tarlich 73 17.09.15 10:35 Сейчас в теме
Мучаюсь с проблемой - при пробитии чека выходит надпись Неизвестная ошибка - статус возврата -0 , перерыв код (там то и ни чего сложного нет ) склонен что проблемма не в 1Ц а в самом аппарате
5. dr2c 39 23.03.16 14:56 Сейчас в теме
Спасибо вам Андрей, за огромный и подробный труд. Я думал вы только у себя на interface31.ru пишите...
6. oldcopy 64 23.03.16 19:25 Сейчас в теме
Здесь был эксперимент, пока не слишком удачный. Редактор родом из 90-х вымораживает, как в плане верстки текста, так и в плане загрузки изображений. В общем времени на нормальное размещение статьи с задуманным оформлением и картинками уходит недопустимо много :(
7. user593470_makakape3yc 12.07.16 11:55 Сейчас в теме
Нормальная статья, актуальная.
8. rebelA 29.03.17 10:12 Сейчас в теме
Есть кто подключал по данной инструкции к 1с 7.7 ?
Оставьте свое сообщение