Сохранение изменений
Все изменения хранятся в виде записей VCS в таблице Запись VCS (sys_vcs_record). Они создаются автоматически и не могут быть удалены или изменены.
Записи VCS
Каждое действие (создание, удаление, обновление) над объектом версионируемой таблицы, ведет к созданию новой записи в таблице Запись VCS (sys_vcs_record). В этой таблице содержится информация об изменениях, совершенных во всех приложениях на платформе.
- Записи VCS невозможно создать, обновить или удалить вручную. Они автоматически создаются системой и доступны для чтения только пользователям с ролью admin.
- Администратор (admin) системы может также редактировать поля Локальный пакет и Игнорировать флаг Protected.
Поле | Описание |
---|---|
Наименование таблицы | Системное имя целевой таблицы записей. |
Запись | Уникальный ID исходной записи, которая была изменена. |
Запись документа | Содержит ссылку на запись таблицы, для которой создана текущая запись. |
Копия записи (JSON) | В этом поле хранятся атрибуты целевой записи в формате JSON в виде ассоциативного массива. Пример {"value": "Report Item", "policy": "Open", "sys_id": 159653803414986194, "column_id": 156941403909472422, "record_id": 159653803414985080, "language_id": 156628684306541141, "application_id": 155931135900000002, "sys_created_at": "2020-08-04 10:47:14", "sys_created_by": 155931135900000001, "sys_updated_at": "2020-08-04 10:47:14", "sys_updated_by": 155931135900000001} |
Актуальная | Флажок установлен, если данная версия является текущей. |
Кем создано | Пользователь, совершивший изменение. |
Когда создано | Дата и время создания записи. |
Локальный пакет | Локальный пакет, в котором находится запись. |
Импортированный пакет | Импортированный пакет, к которому относится запись. |
Восстановлена версия | Уникальный ID версии записи, из которой текущая запись была восстановлена. |
Действие | Тип действия. Возможные значения:
|
Политика защиты | Текущая политика защиты записей после завершения действия. Возможные варианты:
|
Игнорировать флаг Protected | Если установлен флажок, текущая запись будет записана поверх существующей версии с политикой Защищено. |
Все изменения хранятся в локальном пакете, выбранном в Настройках администратора локальном пакете (в поле Локальный пакет). Также сделать пакет текущим можно на форме самого локального пакета. Читайте статью Сборка локальных пакетов, чтобы узнать больше об управлении записями VCS.
О том, как импортировать записи VSC и использовать функцию предпросмотра, читайте в статье Импорт конфигурационных пакетов.
Политика защиты
Атрибут Protection policy отвечает за защиту данных. После создания записи в версионируемой таблице политика защиты этой записи становится Открыта. После обновления записи значение поля Политика защиты становится Изменена. Эти значения переносятся в поле Политика защиты в соответствующей записи VCS, то есть версия записи имеет ту же политику, что и сама запись.
Администратор (admin) системы может редактировать поля Локальный пакет и Игнорировать флаг Protected записей с любой политикой защиты.
Во время процесса импорта все записи, которые могут быть перезаписаны, также могут быть и обновлены. Оба значения политики защиты записи, заданные в системе и в конфигурационном пакете, принимаются в расчет. Все возможные комбинации представлены в таблице ниже.
Политика защиты исходной записи | Политика защиты целевой записи | Результат |
---|---|---|
Защищена | Защищена | Успешно |
Открыта | Успешно | |
Изменена | Успешно | |
Изменена | Защищена | Ошибка. Для продолжения установите флажок Игнорировать флаг Protected. |
Открыта | Успешно | |
Изменена | Успешно | |
Открыта | Защищена | Ошибка. Для продолжения установите флажок Игнорировать флаг Protected. |
Открыта | Успешно | |
Изменена | Ошибка. Для продолжения установите флажок Игнорировать флаг Protected. |
Читайте статью Рекомендации для разработчиков, чтобы узнать больше о политике защиты.
Идентификация компании-клиента
Для возможности идентификации компании-клиента при развертывании вендором для экземпляра системы устанавливается идентификатор клиента – префикс, который добавляется к именам таблиц, созданных клиентом. Эта мера позволяет избежать путаницы в названиях в случае, когда клиент создает таблицу с названием, аналогичным названию таблицы уже существующей в приложении по умолчанию. Для решения этой задачи в продуктах SimpleOne префикс приложения стоит перед префиксом клиента. Например, есть таблица График работы (Work schedule), которая существует в приложении Simple (префикс sys), а клиент (префикс client) создает таблицу с таким же названием "График работы" в том же приложении. В результате созданной клиентом таблице присваивается системное наименование sys_client_work_schedule.
Общий шаблон наименования таблиц следующий:
префиксПриложения_префиксКлиента_названиеТаблицы
Чтобы получить префикс называния таблицы, используйте в скрипте метод ss.getTablePrefix().
- No labels
1 Comment
editor