Скуд сигур как выполнить импорт из таблицы excel

Обновлено: 07.07.2024

Настольные считыватели подключаются не к контроллеру, а к компьютеру, за которым оператор работает в ПО Sigur.

Настольные считыватели обязательны не всегда, но часто. Рассмотрим что они дают:

  • Возможность прямо с рабочего места, не подходя к подключенным к контроллеру считывателям (к турникетам и т. п.) централизованно заносить новые идентификаторы, а также искать в базе ранее идентификаторы, просто поднося их к настольному считывателю.
  • Для карт Mifare настольный считыватель нужен практически всегда, т. к. при добавлении карты в базу с него ПО Sigur подготовит саму карту к работе — запишет в ее память данные, установит пароль на доступ к ним. Без этого карта Mifare бесполезна, не более защищена от копирования чем простой EM Marine.
  • При использовании идентификации по отпечатку пальца Biosmart или Anviz настольный считыватель нужен всегда, т. к. занесение с настенных не рекомендуется (в случае Biosmart) или невозможно (в случае Anviz).

Sigur поддерживает только эти модели настольных считывателей:



ACS ACR1252

Для карт Mifare.

Необходим для корректной работы с картами Mifare в защищенном режиме.

Sigur Reader EH

Для карт EM Marine и HID 125 Khz.



Futronic FS80

Необходим для занесения отпечатков пальцев при использовании считывателей Biosmart, подключаемых к контроллерам по Wiegand.



Anviz U-Bio

Необходим для занесения отпечатков пальцев при использовании считывателей Anviz, подключаемых к контроллерам по Wiegand, а также терминалов Anviz C2.



BioSmart DCR-PV

Для занесения вен ладоней при использовании считывателей Biosmart, подключаемых к контроллерам по Wiegand.

ВЗОР-Mini

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

Sigur Reader W

Данное устройство не является законченным готовым к эксплуатации считывателем.

Это — конвертор из Wiegand-26 в USB, позволяющий подключить более-менее любой считыватель с Wiegand-26 и использовать его в качестве настольного.

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

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

Отдельная область знаний также это подключение других биометрических считывателей, с которыми у Sigur нет глубокой интеграции (например, Suprema, TBS и др.). При этом обычно биометрические признаки можно заносить в «родном» ПО от производителя считывателя, используя их же настольный считыватель.

Electronic Software Distribution

Может в будующем сделаю статью по загрузке данных в СКУД.

Но вообще добавление через MySQL запрос в целом выглядит следующим образом:

Добрый день, подскажите удалось ли реализовать выгрузку фото в Сигур? (5)
Привет.
Фотки в сигуре не вели.
И Я на том месте уже не работаю.
Так что вряд ли смогу подсказать)
Но это 100% реально сделать.

(5)
Выгрузку фото сделать несложно. Кроме вставки в таблицу PERSONAL надо еще добавлять строку в таблицу PHOTO, колонки:
ID - ID объекта. =PERSONAL.ID.
PREVIEW_RASTER - Уменьшенная копия фотографии в формате JPEG в цветовом пространстве RGB *1.
HIRES_RASTER - Полноразмерная фотография в формате JPEG в цветовом пространстве RGB *1.
TS - «Версия фотографии». Целое число, которое меняется тогда и только тогда, когда меняется сама фотография (поля _RASTER). Может быть, например, хешем от изображения или временем его создания. Используется в работе кеша фотографии на стороне клиентских мест, а также кеша биометрических дескрипторов, которые строятся системой автоматически для добавляемых или изменяемых фотографий.

*1 Уменьшенная копия фотографии используется в интерфейсе системы там, где область ее отображения минимальна. Рекомендуется в качестве уменьшенной копии записывать версию фотографии, не превышающую размера 256x256 пикселей, в качестве полноразмерной — не превышающую размера 1920x1080 пикселей.
Допускается записывать в качестве уменьшенной копии тоже самое, что и в качестве полноразмерной, в т.ч. изображение достаточно большого размера.

Просто достать все карты за период в формате 000,0000. время входа, выхода. справочник персонал не ведется.
Знаем только номер карты. пример 000,12345.
Хотим получить данные по этой карте.

например запрос
select id,logtime,devhint,logdata,ord(substr(logdata,5,2)) as dir from logs where substr(logdata,1,2)=0xFE07

известен только номер xxx,12345

if(substr(HEX(logdata), 1, 2) = 18,
CONCAT(
RIGHT(CONCAT('000', CONV(substr(HEX(logdata), 3, 6), 16, 10) DIV 65536),3),
',',
RIGHT(CONCAT('00000', CONV(substr(HEX(logdata), 3, 6), 16, 10) % 65536), 5)),
NULL)

а что данное условие делает? substr(HEX(logdata), 1, 2) = 18

разобрался.
Может помнишь как достать из 0xFE0700010103000000001800F20C00000000FFFF код карты 000,61664

(12)
Насколько помню, проверяет является ли карта в формате Wiegand-26, в противном случае возвращает null, но это было давно и не правда.

Вот как расшифровать в mysql запросе:

Смысл тут - взять кусочек HEX, превратить его в число. Поделить на 65536 и записать в формате 000
Затем взять еще кусочек HEX, снова в число, получить остаток от деления на 65536 и записать в формате 00000
Затем объединить это дело в 000,00000

Вот так функцией 1с:

(14) У вас очень старая платформа?
СтрШаблон - подставляет параметры в строку. Аналог в других языках - format
СтрРазделить - разбивает строку в массив подстрок по заданому разделителю. Аналог в других языках - split (19) Ну да, можете поискать эти функции в общем модуле бсп по работе со строками.
Но с 8.3.6 это включено в платформу. СтрШаблон заменил на СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку() СтрРазделить это СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок()

(0) Подскажите как называется имя базы по умолчанию? Представители установили, а имя базы для подключения не знают, доступа у меня к серверам нет.

Сервер = есть
Порт = есть
Имя Базы = НЕТ
Пользователь = есть
Пароль = есть

`tc-db-main` - справочники
`tc-db-log` - события

Здравствуйте. Подскажите, пожалуйста, где хранятся номера пропусков, если пропуск не один? В таблице personal хранится только одна запись по сотруднику. Соответственно, одна запись CODEKEY и одно значений пропуска. В самом приложении СИГУР вводим по сотруднику несколько пропусков. Как найти номер второго пропуска? (25) Привет, честно говоря, не помню и сугура под рукой нет уже давно.
Но точно получал и выводил несколько пропусков по сотруднику.
Возможно в списке сотрудников по одному человеку прям несколько записей. (26)Запросом по сотруднику только одну строку получаем. И ID сотрудника - это ключевое поле по таблице. Все оказалось очень просто: первый пропуск хранится в таблице Personal. Все последующие номера пропусков находятся в таблице personal_key. (30) Перевод в десятичную систему счисления из шестнадцатиричной. А можете помочь с преобразованием номера карты em-marine вида "0008599310" в код Wiegand "000003066E1D"?=) буду крайне признателен, самому знаний не хватает и где взять найти не могу) (32) Неа, не знаю я как формируется emmarine.
По поводу виганда - просил у саппорта СКУДа скинуть мне данные.
Они скинули экселевский файл с формулой.

(32)
1) переводите 0008599310 в двоичную форму, получается:
100000110011011100001110

2) дополняете слева нулями до 24 бит:
100000110011011100001110 (в данном случае их и так было 24)

3) разбиваете по-середине на две части по 12 бит:
100000110011 011100001110

4) считаете кол-во единиц в левой и правых частях:
100000110011 => N1=5
011100001110 => N2=6

5) C1 = N1%2, т.е. остаток от деления N1 на 2.
C1 = 1

6) C2 = (N2+1)%2, т.е. остаток от деления (N2+1) на 2.
C2 = 1

7) добававляете C1 слева двоичного представления, C2 - справа:
1 100000110011 011100001110 1

8) воспринимаете результат как 26-и битное целое, переводите его в hex:
3066E1D

9) дополняете слева нулями до 12 знаков:
000003066E1D

Очевидно же все.

(34) разобрался уже, спасибо. кому нибудь точно пригодится, в инете в большинстве ресурсов как то коряво написано или не полностью Возможно ли с помощью данной обработки выгружать данные в табель, если да то подскажите пожалуйста как? как её применить в управляемых формах? Спасибо. (36) Это скорее полуфабрикат для разработчиков.
Сигурда под рукой уже с год нету.
Вообще это реализуемо естественно. Спасибо за ответ. Пытаюсь собрать обработку в управляемых формах на основе выложенного кода но есть проблемы с некоторыми данными, подскажите пожалуйста, чего не хватает. Заранее благодарен. Извините если вам покажется абсурдным этот вопрос, но мне очень нужен ваш ответ.
Вот ошибки;
Обработка.Сигур.Форма.Форма.Форма(118,3)>: Переменная не определена (Connection)
<<?>>Connection.Close(); (Проверка: Сервер)
: Переменная не определена (Connection)
Подключение = ТипЗнч(Recordset) = Тип("COMОбъект") И ТипЗнч(<<?>>Connection) = Тип("COMОбъект"); (Проверка: Сервер)
: Переменная не определена (Connection)
Recordset.Open(ТекстЗапроса, <<?>>Connection, 1); (Проверка: Сервер)
: Переменная не определена (Connection)
Recordset.Open(ТекстЗапроса, <<?>>Connection, 1); (Проверка: Сервер)
: Переменная не определена (Connection)
Recordset.Open(ТекстЗапроса, <<?>>Connection, 1); (Проверка: Сервер)
: Переменная не определена (Recordset)
Подключение = ТипЗнч(<<?>>Recordset) = Тип("COMОбъект") И ТипЗнч(Connection) = Тип("COMОбъект"); (Проверка: Сервер)
: Переменная не определена (Recordset)
<<?>>Recordset.Open(ТекстЗапроса, Connection, 1); (Проверка: Сервер)
: Переменная не определена (Recordset)
<<?>>Recordset.Open(ТекстЗапроса, Connection, 1); (Проверка: Сервер)
: Переменная не определена (Recordset)
<<?>>Recordset.Open(ТекстЗапроса, Connection, 1); (Проверка: Сервер)
: Переменная не определена (Limit)
|LIMIT "+<<?>>Limit+" (Проверка: Сервер)
: Переменная не определена (Limit)
|LIMIT "+<<?>>Limit+" (Проверка: Сервер)
: Переменная не определена (Соединение)
Если <<?>>Соединение.Конструктор("MySQL ODBC 5.3 ANSI Driver") (Проверка: Сервер)
: Переменная не определена (Соединение)
И <<?>>Соединение.Деструктор() Тогда (Проверка: Сервер)
: Переменная не определена (Соединение)
ТЗ = <<?>>Соединение.ПолучитьСотрудников("Gebau", "1"); (Проверка: Сервер)
: Переменная не определена (Соединение)
Структура = <<?>>Соединение.ПолучитьПосещаемость( Период.ДатаНачала, (Проверка: Сервер)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер); (Проверка: Сервер)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер, , , , , , Структура); (Проверка: Сервер)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер); (Проверка: Сервер)
: Переменная не определена (Структура)
Сигур.Конструктор(Драйвер, , , , , , <<?>>Структура); (Проверка: Сервер)
: Переменная не определена (Структура)
ТабДок = <<?>>Структура.ТабДок; (Проверка: Сервер)
: Переменная не определена (Период)
Структура = Соединение.ПолучитьПосещаемость( <<?>>Период.ДатаНачала, (Проверка: Сервер)
: Переменная не определена (Период)
<<?>>Период.ДатаОкончания, (Проверка: Сервер)
: Переменная не определена (Сотрудник)
<<?>>Сотрудник, (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (НаборЗаписейВТаблицу)
ТЗ = <<?>>НаборЗаписейВТаблицу(); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (НаборЗаписейВТаблицу)
ТЗ = <<?>>НаборЗаписейВТаблицу(); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (НаборЗаписейВТаблицу)
ТЗ = <<?>>НаборЗаписейВТаблицу(); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (КонкатенацияМассивов)
Отделы = <<?>>КонкатенацияМассивов(Новый Структура("Отделы,Строки", Отделы, Строки), Истина); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (КонкатенацияМассивов)
Отделы = <<?>>КонкатенацияМассивов(Новый Структура("Отделы,Строки", Отделы, Строки), Истина); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РасшифроватьКарту)
<<?>>РасшифроватьКарту(Строка.CODEKEY); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РасшифроватьКарту)
<<?>>РасшифроватьКарту(Строка.CODEKEY); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РасшифроватьКарту)
<<?>>РасшифроватьКарту(Строка.EventCodeKey); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (ПолучитьСотрудникаПоТабелю)
Строка.Сотрудник = <<?>>ПолучитьСотрудникаПоТабелю(Строка.TABID); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (ПолучитьСотрудникаПоТабелю)
Работник.Сотрудник = <<?>>ПолучитьСотрудникаПоТабелю(Работник.Табель); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РусифицироватьКолонкиТаблицы)
<<?>>РусифицироватьКолонкиТаблицы(ТЗ); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РусифицироватьКолонкиТаблицы)
<<?>>РусифицироватьКолонкиТаблицы(ТЗ); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (РассчитатьПосещаемость)
Посещаемость = <<?>>РассчитатьПосещаемость(вДанные, ДатаНачала, ДатаОкончания); (Проверка: Сервер)
: Процедура или функция с указанным именем не определена (СформироватьТабДокПосещаемости)
ТабДок = <<?>>СформироватьТабДокПосещаемости(МассивРаботников, ДатаНачала, ДатаОкончания); (Проверка: Сервер)
: Переменная не определена (Обработки)
Сигур = <<?>>Обработки.Сигур.Создать(); (Проверка: Тонкий клиент)
: Переменная не определена (Обработки)
Сигур = <<?>>Обработки.Сигур.Создать(); (Проверка: Тонкий клиент)
: Переменная не определена (Обработки)
Сигур = <<?>>Обработки.Сигур.Создать(); (Проверка: Тонкий клиент)
: Переменная не определена (Обработки)
Сигур = <<?>>Обработки.Сигур.Создать(); (Проверка: Тонкий клиент)
: Переменная не определена (Соединение)
Если <<?>>Соединение.Конструктор("MySQL ODBC 5.3 ANSI Driver") (Проверка: Тонкий клиент)
: Переменная не определена (Соединение)
И <<?>>Соединение.Деструктор() Тогда (Проверка: Тонкий клиент)
: Переменная не определена (Соединение)
ТЗ = <<?>>Соединение.ПолучитьСотрудников("Gebau", "1"); (Проверка: Тонкий клиент)
: Переменная не определена (Соединение)
Структура = <<?>>Соединение.ПолучитьПосещаемость( Период.ДатаНачала, (Проверка: Тонкий клиент)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер); (Проверка: Тонкий клиент)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер, , , , , , Структура); (Проверка: Тонкий клиент)
: Переменная не определена (Драйвер)
Сигур.Конструктор(<<?>>Драйвер); (Проверка: Тонкий клиент)
: Переменная не определена (Структура)
Сигур.Конструктор(Драйвер, , , , , , <<?>>Структура); (Проверка: Тонкий клиент)
: Переменная не определена (Структура)
ТабДок = <<?>>Структура.ТабДок; (Проверка: Тонкий клиент)
: Переменная не определена (Период)
Структура = Соединение.ПолучитьПосещаемость( <<?>>Период.ДатаНачала, (Проверка: Тонкий клиент)
: Переменная не определена (Период)
<<?>>Период.ДатаОкончания, (Проверка: Тонкий клиент)
: Переменная не определена (Сотрудник)
<<?>>Сотрудник, (Проверка: Тонкий клиент)

(38)
Судя по всему вы не объявили переменные в модуле объекта:

Огромное спасибо. Теперь намного лучше, но появились ещё 2 ошибки помогите пожалуйста разобраться и с ними
инициализации модуля: Обработка.Сигур.Форма.Форма.Форма
по причине:
: Неопознанный оператор
Connection <<?>>- COM Объект ADODB.Connection
: Определения процедур и функций должны размещаться перед операторами тела модуля
<<?>>Функция Конструктор( Знач Драйвер,

1) наверное забыли установить драйвер для работы с MySQL

2) не там переменные объявили.
Они должны объявлятся в самом начале модуля объекта.

Вот не задача, драйвер установлен и переменные указаны правильно, да вот всё равно ошибки не прекращаются
: Неопознанный оператор
Connection <<?>>- COM Объект ADODB.Connection (Проверка: Сервер)
: Определения процедур и функций должны размещаться перед операторами тела модуля
<<?>>Функция Конструктор( Знач Драйвер = "SQL Server", (Проверка: Сервер) Определения процедур и функций должны размещаться перед операторами тела модуля

Либо переменные объявили не там где надо, либо точку с запятой установили после "КонецПроцедуры"

Спасибо конечно за подсказки, но увы не чего не получается с этими ошибками, быстрее всего нужно смотреть саму обработку для полного анализа Добрый день! Подскажите пожалуйста как выполнить загрузку из mysql с определенного id при попытке запроса WHERE ID > '2570' 1с всё равно обходит все записи. Спасибо. (45) Поставьте себе какойнить удобный запросник или phpmyadmin или datagrip. Там и эксперементируйте. Эксперементировал там отрабатывает правильно в 1с нет

Настраиваю новую базу данных сигура.
помню что для работы с персоналом нужна таблица personal в tc-db-main

Модуль «Синхронизация данных» предназначен для исключения двойного ведения кадровой базы и для передачи событий прохода во внешнюю пользовательскую СУБД.

Модуль позволяет СКУД автоматически получать информацию о сотрудниках из уже существующего внешнего источника. В текущей версии модуля в роли внешнего источника могут выступать:

  • любая база данных, работа с которой возможна через стандартный интерфейс ODBC (что справедливо для всех популярных баз данных, включая Oracle и MS SQL)
  • «1C:Предприятие»
  • Active Directory

В основе синхронизации лежит последовательное выполнение однотипных циклов синхронизации. В результате работы каждого цикла выявляются и устраняются все отличия данных в БД SIGUR от данных во внешней системе. Циклы выполняются сервером SIGUR автоматически с установленной периодичностью.

При использовании в качестве внешней системы пользовательской базы данных, доступной через интерфейс ODBC, также реализуется передача в пользовательскую базу событий прохода из СКУД. При этом события передаются сразу по мере возникновения, без каких-либо задержек.

Данный модуль является не единственным способом синхронизации данных в СКУД. При работе со SIGUR возможны другие способы:

  • решение от «1С:БИТ», позволяющие синхронизировать кадры по базе «1С:Предприятие»
  • встроенная в любое ПО SIGUR функция импорта информации о сотрудниках из таблица MS Excel
  • cинхронизация по базе ПО «Интеллект», доступная в «Интеллект» при наличии модуля интеграции со SIGUR
  • cинхронизация персонала по партнерскому веб сайту, загрузка на сайт фактов проходов. Оптимально при организации СКУД в массе однотипных объектов с последующей централизацией управления, например в школах
  • cамостоятельная разработка на основе открытых интерфейсов интеграции, предусмотренных в SIGUR; данная возможность при наличии должной квалификации позволяет как автоматизировать синхронизацию сотрудников, так и получать события, в том числе проходов, при необходимости - реальном времени

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

Синхронизация по базе данных (Oracle, MS SQL или др.)

Использование данного модуля, в отличии от других модулей SIGUR, требует определенных технических знаний: базовых знаний о работе с реляционными базами данных, о синтаксисе языка SQL, об интерфейсе ODBC. Данная функция не является обязательной и предназначена для средних и крупных заказчиков, в штате которых есть специалисты требуемой квалификации.

При синхронизации по базе данных модуль обеспечивает следующие функции:

  • Работа с любой внешней базой данных, для которой существует ODBC драйвер. Это включает MS SQL, Oracle, MySQL, Firebird, PostgreSQL, dBase, MS Access, Paradox и другие.
  • Cинхронизация основных полей учетных карточек сотрудников: ФИО, отдел, табельный номер, должность, примечание; при этом по отделам допускается перенос иерархии их вложенности из внешней системы.
  • Cинхронизация любых созданных пользователем дополнительных параметров.
  • Cинхронизация графиков рабочего времени и доступа. При этом графики создаются и наполняются на стороне СКУД, из внешней БД переносятся только назначения графиков сотрудникам.
  • Cинхронизация фотографий, при этом:
    • Во внешней системе фотографии могут храниться в формате JPEG, BMP, GIF, PNG. Исходные фотографии во внешней системе могут иметь любой размер. Используемый графический формат определяется автоматически, размеры автоматически приводятся к нужным для работы SIGUR.
    • Реализована опция оптимизации загрузки фотографий, которую при возможности рекомендуется задействовать. Опция работает следующим образом: Внешняя БД предоставляет доступ не только к фотографии, но и к «версии фотографии», представляющей собой некое значение, изменяющееся каждый раз когда меняется фотография. Например, в роли «версии фотографии» может выступать временная отметка момента последнего изменения данной фотографии, ее хеш или же просто целое число, увеличиваемое на единицу внешней базой при каждом обновлении в ней самой фотографии. СКУД в такой ситуации большую часть времени будет запрашивать и сравнивать только версии фотографий, что принципиально менее ресурсоемко, чем каждый раз сравнивать сами фотографии. Сама фотография из внешней базы будет запрошена только в том случае, если в СКУД к этому моменту еще нет данной фотографии нужной версии.
    • Даже без задействования вышеописанной оптимизации СКУД для оптимизации не будет сравнивать сами фотографии, вместо этого СКУД будет автоматически прозрачно для пользователя вычислять хеши фотографий, хранить их и анализировать структуру файлов фотографий только в случае изменения хеша по отношению к предыдущему значению.
    • СКУД может принимать из внешней системы номера пропусков сотрудников в одном из нескольких форматов, включая десятичный номер и шестнадцатеричный номер.
    • СКУД может наоборот передавать во внешнюю систему номера пропусков, присвоенных сотрудникам средствами самой СКУД. Номер передается во внешнюю систему в одном из выбранных форматов.
    • На каждое событие могут передаваться следующие данные: Идентификатор сотрудника во внешней базе (ранее полученный оттуда в процессе синхронизации кадровых данных), имя сотрудника, должность, табельный номер, примечание к сотруднику, номер использованного для прохода идентификатора (может передаваться в разных форматах), Active Directory DN сотрудника, направление совершенного прохода, дата и время прохода.
    • СКУД может передавать во внешнюю БД не только проходы сотрудников, ранее загруженных из внешней БД, но и сотрудников, созданных прямо в интерфейсе СКУД. При этом сотрудник во внешней БД может идентифицироваться по его табельному номеру или другому свойству, заданному в СКУД.
    • Проходы передаются незамедлительно после того как они произошли.
    • Если связи с внешней БД нет, то СКУД периодически предпринимает попытку ее восстановления. После восстановления во внешнюю БД автоматически загружаются все события, произошедшие за время отсутствия связи.

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

    1. Небольших организаций (до 1000 человек).
    2. Организаций, не имеющих фотографий во внешней базе.

    Требуемая настройка: минимальна. Достаточно ввести ODBC строку подключения и один единственный SQL запрос, принимающий из внешней базы все данные, которые требуется синхронизировать. SQL запрос может делать выборку из какой-либо таблицы внешней базы, либо нескольких таблиц (JOIN), либо из специально созданного для СКУД представления (VIEW).

    Результирующее поведение: СКУД будет регулярно выполнять указанный SQL запрос и актуализировать хранимые данные по результату данного запроса.

    Оптимизация работы с фотографиями

    Рекомендуется для: средних и крупных организаций (свыше 1 000 человек), имеющих фотографии во внешней базе.

    Требуемая настройка: необходимо обеспечить наличие во внешней базе поля «версия фотографии», обеспечить его корректное заполнение, например, реализовав «триггер», записывающий в данное поле текущее время при каждом обновлении данных фотографии. Затем настройка происходит аналогично «базовому варианту», но запрос данных сотрудников должен возвращать только версию фотографии. Для получения же самой фотографии должен быть введен отдельный запрос.

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

    Передача номеров пропусков во внешнюю базу

    Рекомендуется для: организаций, использующих пропуска не только для SIGUR, но и для других задач. Примером может служить ВУЗ, в котором пропуска студентов используются также программой библиотечного учета.

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

    Результирующее поведение: в дополнение ко всей обычной вышеописанной логике, СКУД будет обращать внимание на факты расхождения номеров пропусков, хранимых в СКУД и во внешней системе. В случае выявления таких расхождений они будут устраняться обновлением данных во внешней системе.

    Оптимизация запусков циклов синхронизации

    Рекомендуется для: крупных организаций (от 80 000 человек).

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

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

    Синхронизация по «1С:Предприятие»

    Для работы синхронизации по «1С:Предприятие» требуется соблюдение следующих условий:

    • Платформа «1С:Предприятие» должна иметь версию 8.1, 8.2 или 8.3, установленная версия определяется автоматически. Поддержка других версий платформы может быть реализована нами по запросу.
    • Конфигурация «1С:Предприятие» должна включать справочники «СотрудникиОрганизаций», «ПодразделенияОрганизаций» и «Организации». Данным требованиям, в частности, удовлетворяют конфигурации «Зарплата и управление персоналом» и «Управление производственным предприятием» (названия указаны для 8.1 и 8.2).
    • Программа «1С:Предприятие» должна быть установлена на тем же компьютере, где установлен сервер СКУД. При этом база «1С:Предприятие» может находится на другом компьютере. Поддерживаются как «файловые» так и «SQL» типы баз.

    При включении функция обеспечивает автоматическую актуализацию кадровых данных в SIGUR по базе «1С:Предприятие». Переносятся следующие данные о каждом сотруднике: Имя (ФИО), отдел, должность, табельный номер. При наличии в базе «1С:Предприятие» нескольких организаций можно выбрать синхронизировать их все либо какую-то одну конкретную. При синхронизации всех в базе СКУД будут автоматически созданы разделы организаций, и уже в них будут создаваться отделы.

    При внесении изменений в «1С:Предприятие» (добавлении сотрудника, изменения его должности или отдела или др.), эти изменения автоматически будут применены в базе SIGUR.

    Технически взаимодействие с 1С выполняется через COM-соединение. Для работы данной функции не требуется внесение каких-либо изменений или дополнений в конфигурацию 1С.

    Данная функция может быть использована совместно с функцией выгрузки табеля учета использования рабочего времени из СКУД в 1С, реализуемой модулем «Выгрузка табеля в 1С».

    Синхронизация по Active Directory

    Для работы синхронизации по «Active Directory» в SIGUR вводятся параметры соединения с контроллером домена (адрес, название домена, имя пользователя и пароль для подключения).

    При включении функция обеспечивает автоматическую синхронизацию данных о сотрудниках в SIGUR по содержимому Active Directory. Переносятся следующие данные о каждом сотруднике: Имя, отдел, примечание, фотография (отключаемо). В качестве отдела используется положение учетной записи сотрудника в Active Directory, поддерживается любой уровень вложенности.

    При внесении изменений в Active Directory (добавлении там человека, перемещении его в другую папку или др.), эти изменения автоматически будут применены в базе SIGUR.

    Данная функция может быть использована совместно с реализованной в «Базовом» модуле функцией автоматической блокировки учетных записей в Active Directory при физическом покидании сотрудниками территорий, разрешенных для работы в домене.

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

    Стоимость модуля составляет 24 800 рублей.

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

    Обратите внимание! Для работы данного модуля требуется «Базовый» модуль ПО SIGUR.

    Установка системы контроля и управления доступом (СКУД) призвана автоматизировать управление входом на территорию (будь то маленький офис или крупное предприятие). Помимо повышения безопасности предприятия у руководства появляется возможность получать информацию о соблюдении рабочих графиков сотрудникам и фактической наработке.

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

    Для идентификации на точке доступа работникам выдаются карты или брелки (обычно формата EM-Marine или MIFare), в которых записан уникальный код, присваиваемый сотруднику в программном обеспечении при приёме на работу. Помимо бесконтактных карт в ПО «Sigur» возможна идентификация по биометрическим данным (распознавание лица, отпечаток пальца, сканирование радужки глаза, сканирование рисунка вен ладони)

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

    Учет рабочего времени происходит следующим образом: сотрудники, соответственно своему рабочему графику, проходят идентификацию на вход и выход, промежуток от входа до выхода записывается в ПО на сервере за каждый рабочий день, что позволит выяснить сколько человек фактически отработал часов в интересующий руководство день. В конце месяца выгружается отчет об учете рабочего времени (табель Т-13 или ОКУД 0504421) в формате Excel. Также в ПО «Sigur» есть возможность выгрузки табеля напрямую в 1С.

    Рассмотрим на примере одной из наших интеграций, где была успешно проведена установка СКУД SIGUR. У клиента был установлен на КПП турникет, управляемый контроллером и серверное ПО, являвшееся неудобным самому клиенту. Выбор оборудования пал на новый турникет с встроенным в него контроллером и двумя считывателями карт, данное решение удобно тем, что не занимает много места, позволяет не монтировать контроллер отдельно и тянуть кабель между турникетом и контроллером.

    Из ранее используемого ПО удалось экспортировать список идентификаторов, ранее назначенных сотрудникам и конвертировать его в формат карт Sigur, что позволило при интеграции потратить меньше времени на заполнение данных.

    Так как предприятие ведёт кадровый учет в 1С ЗУП было решено воспользоваться дополнительным модулем Sigur «Синхронизация данных», который позволяет синхронизировать любые данные с внешними базами данных или же базой 1С (при помощи написания запроса на языке 1С). Базовый функционал модуля, без написания запроса, позволяет выгрузить из 1С список сотрудников с присвоенными им табельными номерами, должностями и принадлежностям к отделам предприятия. Синхронизация происходит по настроенному интервалу времени, загружая новых сотрудников и удаляя (или перемещая в папку «Уволенные») уволенных.

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

    По итогам интеграции клиент остался доволен и продолжил ряд интеграций с ПО «Sigur» на своих предприятиях в остальных городах.

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

    Читайте также: