Автор Тема: Перенос базы ключей из Z-5R (мод. Web BT) в Z-5R (мод. Web)  (Прочитано 4681 раз)

lewonchik

  • Пользователь
  • *****
  • Сообщений: 3
Здравствуйте, подскажите как перенести ключи из контроллера Z-5R (мод. Web BT) в контроллер Z-5R (мод. Web)? Оба контроллера работают в автономном режиме, через Offline Commander ключи из контроллера Z-5R (мод. Web BT) сохраняются в файл csv, но контроллер Z-5R (мод. Web) этот файл не принимает, его база в другом формате.

gsa

  • Пользователь
  • *****
  • Сообщений: 280
Здравствуйте. Я не эксперт, но вот мои варианты:
1) Переключить контроллеры в сетевой режим (режим Сервер,Клиент), с помощью Guard Commander перенести ключи http://www.ironlogic.ru/il.nsf/pages/GuardCmd затем вернуть автономный режим.
2) Выгрузить базу в csv из обоих контроллеров, открыть оба csv в блокноте или в excel и сравнить их форматы, попробовать преобразовать базу в подходящий формат.

lewonchik

  • Пользователь
  • *****
  • Сообщений: 3
2) Выгрузить базу в csv из обоих контроллеров,
В этом и проблема, контроллер Z-5R (мод. Web) не умеет в csv, у него база в dbf

lewonchik

  • Пользователь
  • *****
  • Сообщений: 3
В общем пытались перенести базу через Guard Commander, но это вообще какой-то треш - мало того что он базу из csv неправильно открывает, а именно формат номера ключа записывается наоборот (например номер 00000084a6bc7 он пишет задом наперёд), он и базу данных dbf создает корявую. Это какого дерьма нужно нажраться, чтобы в приборах одной серии сделать разный формат базы данных? Я уже молчу о программах которые судя по всему рисовал пионер на коленке, большее убожество даже придумать невозможно. Эти программы даже собственные контроллеры не видят пока принудительно не забьёшь IP-адрес контроллера. Техподдержка молчит, а если она молчит значит им пофигу на покупателя и на свои гомняные поделки которые они громко называют СКУД. Для себя решили больше никогда не пользоваться говном от Ironlogic. Лучше немного переплатить и купить оборудование от другого производителя, с отличной надёжностью работы и отличной  техподдержкой.

RadioPoni

  • Пользователь
  • *****
  • Сообщений: 1
Перенёс.
С бубном и плясками, но перенёс.
Вот такую махинацию провернул с своими контроллерами на объекте.
База из Guard Commander на прямую не льётся в Web BT, требуется править базу ручками через Notepad++.
Формат ключей для выгрузки из базы Guard Commander и записи в новый контроллер - Dallas.
1) в этом формате сливаем базу из Guard Commander.
2) Макросом в экселе переворачиваем значения ключей:


Sub ПереставитьПервыеТри_Формат321()
    ' Меняет порядок первых трёх элементов: 1-й, 2-й, 3-й > 3-й, 2-й, 1-й
    ' Остальные три элемента остаются без изменений
    ' Пример: 02 EE 00 00 00 00 > 00 EE 02 00 00 00

    Dim cell As Range
    Dim values As Variant
    Dim part1 As String  ' Новые первые три: [3][2][1]
    Dim part2 As String  ' Последние три без изменений: [4][5][6]

    ' Проверка: выделена хотя бы одна ячейка
    If Selection.Cells.Count < 1 Then
        MsgBox "Ничего не выделено!", vbExclamation
        Exit Sub
    End If

    For Each cell In Selection
        If Not IsEmpty(cell.Value) Then
            values = Split(Trim(cell.Value), " ")
           
            ' Проверяем, что ровно 6 элементов
            If UBound(values) - LBound(values) + 1 = 6 Then
                ' Переставляем первые три: 3-й, 2-й, 1-й (индексы: 2, 1, 0)
                part1 = Join(Array(values(2), values(1), values(0)), " ")
                ' Последние три — без изменений (индексы: 3, 4, 5)
                part2 = Join(Array(values(3), values(4), values(5)), " ")
               
                ' Записываем результат
                cell.Value = part1 & " " & part2
            Else
                ' Можно пропустить или подсветить ошибку
                ' cell.Interior.Color = RGB(255, 255, 0) ' жёлтый цвет для ошибок
            End If
        End If
    Next cell

    MsgBox "Готово! Первые три элемента изменены по схеме: 3-2-1.", vbInformation
End Sub


3) Вставляем изменённые ключи в файл экспортированный из Web BT.
3) Открываем файл в Notepad++.
4) Проверяем наличие символа ; в конце каждой строки если нет его то делаем следующее:
- руками дописываем ;
или
- выполняем авто замену:
Шаг 1 - Нажми Ctrl + H Откроется окно "Замена"
Шаг 2 -
Найти: ^(.+)$
Заменить на: $1;
Шаг 3 - Установить галочку (внизу окона):
"Регулярное выражение"
Шаг 4 - Жмём "Заменить всё"
Notepad++ пробежит по всем строкам и добавит ; в конец каждой непустой строки.
5) Заливаем через Web морду файл с изменёнными ключами в контроллер Web BT.

П.С. Макрос для экселя написал умный робот.