суббота, 11 января 2014 г.

Anviz fingerprint + SQL

Попались в руки замечательные штуки от Anviz (С2, С3 fingerprint scanners).
Если кто не понял - ставим сканеры отпечатков пальцев на входе в офис и получаем контроль доступа в офис и контроль посещаемости рабочих мест (отслеживание опозданий, неявок, ранних уходов). Пришел сотрудник, приложил палец (любой) и автоматически в журнале отметился приход на работу, при необходимости еще и дверь/турникет открылись. Если кто то не хочет сканировать свои драгоценные пальчики - можно использовать RFID карты. На ПК можно построить отчетность по посещаемости в различных разрезах.
Чем же эти сканеры отпечатков пальцев замечательны:
  • Привлекательная цена. Контроллеры Anviz начального уровня в сборе стоят в России от 10 до 20 т.р, что уже вполне могут себе позволить пользователи малого бизнеса.
  • Простота установки. Наличие статуса "опытный пользователь" позволит произвести все процессы необходимые для запуска.

  Из минусов:
  • сложности с поддержкой (продавцы в РФ после продажи вообще на письма не реагируют, софт идущий в комплекте неработоспособен, сайт поддержки anviz.com подглючивает)
  • недостаток информации об устройстве, компонентах, интеграции. Этот минус мы здесь и пытаемся переправить на плюс.
  • глючность устройства (может перестать отвечать на запросы извне, решается перезагрузкой, в настройках устройства есть возможность установки перезагрузки по расписанию)
  • глючность софта. (кстати прошивок новых давно не выпускали).
  • не у всех людей отпечатки легко распознаются устройством. У меня статистика один к двадцати. Решается выдачей таким уникумам карточек RFID.
  • Нет поддержки PoE.
Ну и в общем очень прикольная штука, сразу несколько друзей и знакомых решили себе поставить такие в офисы. Есть еще сканеры с распознаванием лица, но пока и пальцев хватает. Со вступлением закончили.

Итак софт от Anviz (Intelligent management system, она же AIM Standard, она же имеет несколько отечественных названий) по умолчанию работает с базой данных MS Access. База располагается где то в папках вроде C:\Anviz\standard\Att2003.mdb Уточнить можно в меню "система" -> "связь с базой данных".


И все бы хорошо, но если нам необходимо построить какие либо отчеты кроме тех что стандартно зашиты в софт, нам придется обращаться к БД. Один 1С-ник сделал для себя обработку подключающуюся к БД Access и вытаскивающую нужные ему отчеты, сложного вроде ничего нет. Но во многих случаях при обращении к этой базе мы сталкиваемся с кофликтом. База данных постоянно должна быть открыта в Intelligent management system, чтобы скидывать туда данные по расписанию с наших контроллеров. А значит при обращении к базе из стороннего ПО мы можем получить ошибку монопольного доступа. Разбираться с расшариванием самой БД access я не стал, просто решил завести базу в MS SQL, благо опция есть в Intelligent management system. Для этого нам потребуется уже установленный MS SQL server, SQL Management Studio, Anviz Intelligent management system.



  • Открываем SQL Management Studio
  • Создаем в ней базу данных для наших нужд (например anviz)
  • находим в папке с установленным Intelligent management system файлик Att2003.sql. Обычно C:\Anviz\standard\Att2003.sql.
  • Открываем этот файл в SQL Management Studio
  • Указываем для какой базы выполнить набор команд (мы ведь создали её перед этим шагом) и запускаем. 
  • Проверяем базу данных, она уже должна содержать все таблицы для работы с Intelligent management system.


  • Запускаем Intelligent management system, указываем в пункте "система" -> "связь с базой данных" поставщика данных Microsoft OLE DB Provider for SQL Server. Название может отличаться в разных версиях, но суть одна.
  • В следующем окне выбираем SQL сервер из списка, или вводим руками один из своих sql серверов (тот на котором мы создали нашу базу данных). И выбираем базу данных на сервере. Проверяем соединение.
  • На всякий случай перегружаем Intelligent management system.

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

Теперь можем строить отчеты из бд MS SQL, например в странички Sharepoint выводить состояние посещаемости (перечень отсутствующих, регулярно опаздывающих, каждому сотруднику его табель на страничку).