Платформа 3V/Обновления/Формирование обновлений: различия между версиями
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Формирование обновлений}} | {{DISPLAYTITLE:Формирование обновлений}} | ||
− | Сформировать обновления можно | + | Сформировать обновления можно двумя способами - с помощью встроенного менеджера обновлений и методом сваггера. |
==Менеджер обновлений== | ==Менеджер обновлений== | ||
Сервис расположен внизу левой боковой панели инструментов, его пиктограмма - коробка со стрелочкой вниз.<br> | Сервис расположен внизу левой боковой панели инструментов, его пиктограмма - коробка со стрелочкой вниз.<br> | ||
[[Файл:Screenshot 2021-04-23 at 19.19.54.png|мини|слева|Расположение сервиса]] | [[Файл:Screenshot 2021-04-23 at 19.19.54.png|мини|слева|Расположение сервиса]] | ||
<br><br><br><br><br><br><br><br><br> | <br><br><br><br><br><br><br><br><br> | ||
− | При нажатии на нее откроется окно формирования обновления, в которое с помощью переноса объектов из навигатора будут добавляться объекты, которые необходимо включить в обновление. Важно отметить, что если формируемые для обновления объекты имеют ссылки на другие | + | При нажатии на нее откроется окно формирования обновления, в которое с помощью переноса объектов из навигатора будут добавляться объекты, которые необходимо включить в обновление. Важно отметить, что если формируемые для обновления объекты имеют ссылки на другие объекты, последние также необходимо включить в пакет обновлений. Далее для справочников, при необходимости, можно выставить дополнительные настройки, они расположены в этой же области внизу: <br> |
- Включать все элементы, <br> | - Включать все элементы, <br> | ||
- Включать права на объект, <br> | - Включать права на объект, <br> | ||
Строка 31: | Строка 31: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Для справочников есть возможность указать | + | Для справочников есть возможность указать опцию переноса данных, прав на элементы и общих прав на все элементы справочников. |
Для них используется discriminator = '''DictionaryCreateUpdateSettingsDto'''. | Для них используется discriminator = '''DictionaryCreateUpdateSettingsDto'''. |
Текущая версия на 13:37, 5 мая 2021
Сформировать обновления можно двумя способами - с помощью встроенного менеджера обновлений и методом сваггера.
Менеджер обновлений
Сервис расположен внизу левой боковой панели инструментов, его пиктограмма - коробка со стрелочкой вниз.
При нажатии на нее откроется окно формирования обновления, в которое с помощью переноса объектов из навигатора будут добавляться объекты, которые необходимо включить в обновление. Важно отметить, что если формируемые для обновления объекты имеют ссылки на другие объекты, последние также необходимо включить в пакет обновлений. Далее для справочников, при необходимости, можно выставить дополнительные настройки, они расположены в этой же области внизу:
- Включать все элементы,
- Включать права на объект,
- Включать права на элементы - настройка активна только для справочников, у которых включены права доступа на элементы.
После нажатия кнопки "Сформировать обновление" файл с подготовленным обновлением скачается на компьютер. Следующий шаг - установка обновлений в приемнике.
Метод сваггера
Используется метод swagger/index.html?urls.primaryName=Updates#/Updates/Updates_CreateUpdate
Для начала формирования обновления нужно подготовить описание, для объектов которые необходимо сложить в обновление.
Для этого необходимо создать коллекцию описаний объектов
На текущий момент есть 2 типа описаний, для справочников и для всех остальных объектов.
Для простого описания объектов попадаемых в обновление достаточно указать их идентификатор и discriminator = MetaObjectCreateUpdateSettingsDto.
При этом, стоит отметить что если необходимо перенести только описание справочника, без его данных или прав на элементы, то также можно использовать MetaObjectCreateUpdateSettingsDto.
Для примера:
1 {
2 "id": 701,
3 "discriminator": "MetaObjectCreateUpdateSettingsDto"
4 }
Для справочников есть возможность указать опцию переноса данных, прав на элементы и общих прав на все элементы справочников.
Для них используется discriminator = DictionaryCreateUpdateSettingsDto.
1 {
2 "id": 701,
3 "filter": {
4 "$type": "ConditionalDictionaryFilter",
5 "value": [
6 1, 2, 3
7 ],
8 "attribute": {
9 "id": 1,
10 "discriminator": "OwnAttributeDefinitionDto"
11 },
12 "conditionType": "AttributeInCollection"
13 },
14 "IncludeDictionaryPermissions": true,
15 "IncludeDictionaryElementsPermissions": true,
16 "discriminator": "DictionaryCreateUpdateSettingsDto"
17 }
filter - фильтр на элементы справочника. ВНИМАНИЕ!! синтаксис немного отличается от фильтров используемых в отчетах, при этом conditionType совпадает.
Если необходимо обновить (или перенести) все элементы справочника, то необходимо оставить в value пустые квадратные скобки, а в conditionType указать значение AllElements.
IncludeDictionaryPermissions - признак необходимости включения в обновление прав на все элементы справочника (применяемые целиком ко всеми справочнику, а не к конкретным элементам).
IncludeDictionaryElementsPermissions - признак необходимости включения в обновление прав на элементы справочника.