Учетные записи БД подразделения клиента

Активация базы данных

Форма «Учетные записи БД подразделения клиента» открывается в «Менеджере проектов» в разделе «Сервисы» на вкладке «Базы данных» из формы «Обслуживание базы данных» кнопкой «Переключение активной БД»
Предназначена для просмотра списка обязательных учетных записей баз данных связанных с выбранным подразделением и переключения активной учетной записи базы данных.

Кнопки

  • Активация - переключения активной учетной записи базы данных на выбранную.
  • Закрыть - Закрывает окно формы
  • Помощь - открывает текст с описанием формы.

Активация базы данных

Активация выполняется функцией T_ClientDepDB.SetDbActive.

  1. Проверки
    1. База данных уже отмечена как активная
    2. Переключение на базу данных, которая ранее была активна, запрещено
    3. Не задан идентификатор базы данных DB_GUID
    4. Не задано подразделение DEP_ID или Client_dep_id
    5. Не задан GUID подразделения
    6. Не задан идентификатор компьютера
    7. Не задан файл базы данных
    8. Не задан комментарий для активации базы данных
  2. Деактивация всех БД подразделения
  3. Активации БД

Выполняется ТОЛЬКО переключение между учетными записями базы данных.
Создание учетной записи выполняется при выполнении API-функция IsDbActive или API-функция GetReplPrms, например, при репликации.

Новая идентификация баз данных клиентов

Опубликована новая версия репликации 3.4.0.117 и, начиная с этой версии, в нашей базе по новому учитываются базы данных клиентов.
Раньше мы, для понимания что это за база, получали из репликации следующие параметры:
DEP_GUID- идентификатор подразделения клиента, он равен тому, на который выдана лицензия
DEP_GUID_TMP - идентификатор подразделения из базы данных, из таблицы DEPS
Ну и собственно все, по этим двум параметрам программа пыталась понять что это за клиент, подразделение и прописывала отчетные данные в нашей базе PC.

С новой версии список параметров увеличивается до такого:
DEP_GUID- идентификатор подразделения клиента, он равен тому, на который выдана лицензия
DEP_GUID_TMP - идентификатор подразделения из базы данных, из таблицы DEPS, в новой идентификации нужен только для связки со старой
DB_GUID - уникальный идентификатор БД, создается при создании БД в DBMeta или если параметр пустой, то в репликации
DB_HW - идентификатор компьютера, hardware_id, схож с тем, что используется в СЛ
DB_File - путь к базе данных
DEP_ID - номер подразделения из таблицы DEPS

Все эти параметры вместе создают один уникальный составной идентификатор базы данных. Если хотя бы один параметр меняется, то система считает, что база данных поменялась.
Например, что может привести к тому, что идентификатор базы данных поменяется:
а) Файл базы данных переместили в другую папку или переименовали;
б) Репликацию стали запускать с другого компьютера;
в) В глобальных настройках изменили текущее подразделение;
г) На компьютер поставили лицензию другого подразделения;
д) и т.д.

С текущего момента вводится правило, что у одного подразделения клиента (с одинаковым DEP_GUID и DEP_ID) может быть только одна активная база данных. Если база данных неактивная, то репликация не выполняет обмен данными с этой базой, Агент прекращает выполнять свои функции на этой базе данных.

Какие проблемы поможет избежать новая система идентификации:
1. Клиент скопировал базу данных (через файл или копией всей системы) и пытается работать сразу в двух. Или даже больше, чем в двух.
Такой случай был ранее возможен и обмен данными приводил к непредсказуемым последствиям.
2. Создается новая база данных для пункта взамен старой. Файлы репликации могли загружаться и в новую базу и в старую. Теперь не смогут, загрузка будет происходить только в ту базу данных, которая у нас отмечена как активная.
3. Несколько баз данных клиента на одном компьютере, с одним СЛ. Раньше для корректного отображения информации по этим БД в PC в отчете по репликации нужно было готовить фиктивный файл LicensingService.ini. Теперь не нужно.
4. Агент работает с левой базой (на старом компе, в ненастроенной конфигурации и т.д.), в том числе отправляет СМС.

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

Дополнительная информация