Сохранение истории изменений объекта

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

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

1. Обнаружение пути контекста объекта

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

Путь контекста виджета Диаграммы времени ping (см рис ниже) - users.admin.widgets.chartAvailabilityPingHelper.

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

2. Включение хранения истории изменений

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

Типичный способ включить постоянное хранение для событий SberMobile любого типа - использовать глобальную таблицу времени окончания действия события. Чтобы получить доступ к этой таблице, кликните правой кнопкой мыши по узлу SberMobile Server () в Системном дереве и выберите Настроить сервер:

Переключитесь во вкладку Время окончания действия события и кликните по иконке Добавить ряд (), чтобы  добавить новую запись, а затем:

  • Вставьте ранее скопированный путь контекста в поле Контекстной маски или введите его вручную
  • В поле Имя события введите change
  • Выберите желаемый период хранения истории изменений и поле Период истечения срока

Используйте контекстную маску вместо пути, чтобы активировать хранилище истории событий для множества объектов. Например, users.*.widgets.* активирует хранение для всех виджетов, которые принадлежат всем пользователям системы.

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

3. Просмотр истории изменений

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

История откроется в новом окне: