Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
ru:manual:manage_model:branches [2020/09/16 17:07] 192.168.1.50 [Проверка ветки] |
ru:manual:manage_model:branches [2024/07/05 12:38] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | =====Ветки===== | + | ====== Ветки ====== |
- | Механизм Веток обеспечивает работу над изменениями актуальной модели в изолированных областях базы данных и позволяет автоматически переносить изменения в актуальную модель “в один клик”. | + | Механизм **Ветки** обеспечивает работу над изменениями актуальной модели в изолированных областях базы данных и позволяет автоматически переносить изменения в актуальную модель "в один клик". |
- | ====Основные понятия==== | + | == == |
- | В Таблице 2 приведены основные понятия, используемые в настоящем разделе. | + | **Внимание!** Работа с ветками доступна Business Studio редакций Enterprise и Ultimate. \\ Базы с ветками не могут быть открыты в Business Studio редакции Professional. |
+ | ====== | ||
- | На Рисунок 3 показан пример иерархии веток: \\ \\ | + | ===== В этом подразделе ===== |
+ | * [[ru/manual/manage_model/branches/branches_props]] | ||
+ | * [[ru/manual/manage_model/branches/branches_new]] | ||
+ | * [[ru/manual/manage_model/branches/branches_works]] | ||
+ | * [[ru/manual/manage_model/branches/branches_conflicts]] | ||
+ | * [[ru/manual/manage_model/branches/branches_apply]] | ||
- | [{{ ru/manual/manage_model/lang_manage_model_03.png?nolink | Рисунок 3. }}] | ||
- | ====Свойства веток==== | ||
- | - В начальный момент времени после создания дочерняя ветка является отображением текущего состояния родительской ветки.\\ \\ **Пример.** \\ //Ветка 1.1 (см. Рисунок 3) после создания будет показывать те же самые данные, что и Ветка 1.// \\ \\ | ||
- | - После внесения изменений дочерняя ветка отображает будущее состояние родительской ветки. Это достигается за счет того, что ветка видит данные родительской ветки и накладывает на них изменения, внесенные непосредственно в ветке. Таким образом, дочерняя ветка отображает то, как после ее применения будет выглядеть родительская ветка. \\ \\ | ||
- | - Единицей изменения данных в ветке является параметр объекта или объект, который может быть создан или удален в ветке. Пример отображения изменений состояния объекта показан в статье __Работа в ветке.__ \\ \\ | ||
- | - Изолированность данных ветки. Изменения модели в ветке до ее применения отображаются в ее потомках, но не отображаются в параллельных ей ветках и в ее родительских ветках.\\ \\ **Пример.** \\ //Только после применения Ветки 2 (см. Рисунок 3) к Корневой ветке, Ветка 1 и ее потомки также будут показывать изменения Корневой ветки.// | ||
- | Классы объектов с точки зрения поддержки работы в ветках делятся на 3 типа, описание которых представлено в Таблице 3. | ||
- | <startTableBox> | ||
- | ^ Тип класса ^ Описание ^ Примеры классов ^ | ||
- | | Единые данные в ветках| Класс, имеющий одну информацию для всех веток | Проекты, Порталы, Типы опросов, Пользователи. | | ||
- | | Изолированные данные в ветке с возможностью применения | Класс, объекты которого изолированы в ветке и участвуют в применении ветки. | Процессы, Объекты деятельности, Субъекты, Физические лица и другие классы объектной модели. | | ||
- | | Изолированные данные в ветке без возможности применения | Класс, объекты которого изолированы в ветке, но не участвуют в применении ветки. | Значения показателей ССП, Данные имитации и контроллинга. | | ||
- | <endTableBox|Таблица 3.> | ||
- | ====Создание ветки==== | ||
- | Ветки создаются в **Окне управления ветками** (см. Рисунок 4). Для перехода к данному окну необходимо в **Окне выбора базы данных** в контекстном меню базы выбрать **Управление ветками** (либо **Свойства подключения к базе → Дополнительно → Управление ветками**). | ||
- | [{{ ru/manual/manage_model/autot_manage_model_04.png?nolink |Рисунок 4.}}] | ||
- | Описание назначения кнопок панели инструментов приведено в Таблице 4. | ||
- | <startTableBox> | ||
- | ^ Кнопка ^ Описание ^ Действие ^ | ||
- | | 1 | Создать новую ветку | Объект проходит согласование. | | ||
- | | 2 | Создать новую папку | Создает дочернюю папку под выбранной веткой в навигаторе. | | ||
- | | 3 | Пометить ветку и всех ее потомков к удалению или снять пометку | Отмечает выбранную ветку и всех ее потомков к удалению/снимает отметку. После нажатия кнопки Сохранить действие становится необратимым. | | ||
- | | 4 | Открыть ветку | Открывает выбранную ветку в Business Studio. | | ||
- | <endTableBox|Таблица 4.> | ||
+ | |||
+ | |||
+ | |||
+ | [<contextnavigator>] | ||
+ | |||
+ | |||
+ | |||
- | **Область свойств ветки** служит для ввода и просмотра значений параметров ветки. Описание параметров приведено в Таблице 5. | + | |
- | + | ||
- | + | ||
- | <startTableBox> | + | |
- | ^ Параметр ^ Описание параметра ^ | + | |
- | | Название | Название ветки. | | + | |
- | | Статус | Ветка может иметь один из двух статусов: “Активная” и “Закрытая”. Статус “Закрытая” не позволяет вносить изменения в ветку. При создании новой ветки ей присваивается статус “Активная”. | | + | |
- | | Автор закрытия | Пользователь, установивший ветке статус “Закрыта”. Параметр “Автор закрытия” заполняется автоматически при установке соответствующего статуса. | | + | |
- | | Описание | Пользовательское описание ветки. | | + | |
- | | Флаг “Применяемая” | Задает возможность применить ветку к вышележащей. Применяемые ветки используется для подготовки изменений модели. Ветки со снятым флагом “Применяемая” применить нельзя. | | + | |
- | | Флаг “Быстрый доступ” | Управляет отображением и возможностью выбрать ветку в **Окне выбора базы данных.** | | + | |
- | <endTableBox|Таблица 5.> | + | |
- | + | ||
- | **Список “История применений”** отображает перечень применений ветки. Дата – дата и время применения ветки. Комментарий – комментарий, введенный при применении. | + | |
- | + | ||
- | ====Работа в ветке==== | + | |
- | Открыть ветку в Business Studio можно из окна **Выбора базы данных** (см. Рисунок 5). В дереве веток базы отображаются ветки с установленным флагом **Быстрый доступ** (см. __Создание ветки__). | + | |
- | [{{ ru/manual/manage_model/autot_manage_model_05.png?nolink |Рисунок 5.}}] | + | |
- | + | ||
- | Также ветку можно открыть из **Окна управления ветками** (см. __Создание ветки__). Название текущей ветки отображается в заголовке окна программы. | + | |
- | + | ||
- | При создании или изменении объекта в ветке напротив его названия в Навигаторе или Окне справочника появляется соответствующая пиктограмма (см. Рисунок 6): | + | |
- | [{{ ru/manual/manage_model/cmdt_manage_model_06.png?nolink|Рисунок 6.}}] | + | |
- | + | ||
- | Аналогичные пиктограммы появляются при изменении параметра объекта или __при создании/изменении__ строки списка (см. Рисунок 7): | + | |
- | + | ||
- | [{{ ru/manual/manage_model/cmdt_manage_model_07.png?nolink |Рисунок 7.}}] | + | |
- | + | ||
- | Описание пиктограмм приведено в Таблице 6 | + | |
- | <startTableBox> | + | |
- | ^ Пиктограмма ^ Описание ^ | + | |
- | | 1 | Объект создан в текущей ветке | | + | |
- | | 2 | Объект изменен в текущей ветке | | + | |
- | <endTableBox|Таблица 6.> | + | |
- | + | ||
- | Перечень всех измененных объектов ветки можно увидеть с помощью команды **Буфер ветки** ({{bslink>Главное меню → Управление моделью → Буфер ветки|ShowRibbonPageOrItem?ba822b6e-a8a7-4e7f-89b0-07ce48c12736;9e202d02-d0a4-4893-af8b-45415561b701:Item}}) (см. Рисунок 8). | + | |
- | [{{ ru/manual/manage_model/autot_manage_model_08.png?nolink|Рисунок 8.}}] | + | |
- | + | ||
- | + | ||
- | Открыв свойства объекта, можно увидеть измененные параметры объекта. \\ | + | |
- | Данная команда доступна только в дочерних ветках. \\ \\ | + | |
- | **Внимание!** \\ | + | |
- | После применения текущей ветки к родительской справочник **Буфер ветки** очищается. | + | |
- | + | ||
- | ====Проверка ветки==== | + | |
- | Разные проектные группы могут вносить в своих ветках противоречащие друг другу изменения в модель. Например, в ветке А могут быть удалены объекты, которые изменены или начали использоваться в соседней ветке B. После применения ветки А к актуальной модели в ветке B возникнут конфликты (cм. свойство веток “Изолированность данных ветки”). | + | |
- | Для выявления и последующего устранения подобных случаев применяется операция **Проверки ветки** ({{bslink>Главное меню → Управление моделью → Проверить ветку|ShowRibbonPageOrItem?ba822b6e-a8a7-4e7f-89b0-07ce48c12736;2049ddfb-88c7-4344-b752-91f4b292777b:Item}}). | + | |
- | При наличии конфликтов результат выполнения данной операции выдается в текстовом окне с группировкой по типам ошибок и поддержкой гиперссылок на конфликтующие объекты. В Таблице 7 представлены типы ошибок, возникающие при проверке ветки, и их описание. | + | |
- | + | ||
- | <startTableBox> | + | |
- | ^ Название типа ошибки ^ Описание ^ | + | |
- | | Использование удаленных в родительской ветке объектов | В текущей ветке есть объекты, параметры которых ссылаются на объекты, удаленные в родительской ветке. После применения текущей ветки в родительской ветке появятся объекты со ссылками на удаленные объекты. Для устранения данного типа ошибки необходимо изменить значения параметров, используя не удалённые объекты. | | + | |
- | | Изменение удаленных в родительской ветке объектов | В текущей ветке есть изменённые объекты, которые в родительской ветке имеют статус 'Удален'. Для устранения данного типа ошибки необходимо пересоздать измененные объекты в текущей ветке. | | + | |
- | | Наличие в текущей ветке ссылок на удаленные в текущей ветке объекты | В текущей ветке были удалены объекты, на которые есть ссылки из объектов буфера ветки. Для устранения данного типа ошибки необходимо изменить в текущей ветке значения параметров, ссылающиеся на удаленные объекты. | | + | |
- | | Наличие в текущей ветке объектов, имеющих удаленных родителей. | В текущей ветке есть объекты, имеющие удаленных родителей. Это могло произойти, если: | + | |
- | * В текущей ветке были удалены объекты, под которыми впоследствии в родительской ветке были созданы новые объекты; | + | |
- | * В текущей ветке были созданы объекты, родитель которых впоследствии был удален в родительской ветке. При применении текущей ветки к родительской объекты c удаленными родителям будут также удалены. Для устранения данного типа ошибки необходимо перенести конфликтующие объекты под другой родительский объект. Для этого откройте Окно свойств объекта с помощью гиперссылки в сообщении и выберите команду Сменить родителя (Действия → Сменить родителя). | | + | |
- | <endTableBox|Таблица 7.> | + | |
- | + | ||
- | При отсутствии конфликтов на экране отобразится сообщение (см. Рисунок 9). \\ | + | |
- | [{{ ru/manual/manage_model/cmdt_manage_model_09.png?nolink |Рисунок 9.}}] | + | |
- | **Внимание!** \\ | + | |
- | Операцию {{bslink>Проверки ветки|ShowRibbonPageOrItem?ba822b6e-a8a7-4e7f-89b0-07ce48c12736;2049ddfb-88c7-4344-b752-91f4b292777b:Item}} рекомендуется вызывать периодически, а также перед применением ветки. | + | |
- | + | ||
- | ====Применение ветки==== | + | |
- | + | ||
- | Для применения изменений модели к вышестоящей ветке необходимо использовать операцию **Применения ветки** ({{bslink>Главное меню → Управление моделью → Применить ветку|ShowRibbonPageOrItem?ba822b6e-a8a7-4e7f-89b0-07ce48c12736;6309925b-42cb-4b69-9bed-57622f8b5697:Item}}). | + | |
- | Если текущую ветку невозможно применить к родительской, то на экране появляется соответствующее предупреждение. Текст предупреждений представлен в Таблице 8. | + | |
- | + | ||
- | Если текущую ветку возможно применить, то запускается проверка ветки на наличие конфликтов между объектами текущей ветки и ее родителя, а затем выполняется применение ветки.. | + | |
- | После успешного применения ветки в Окне управления ветками у примененной ветки появляется запись на вкладке История применений (см. Рисунок 10). | + | |
- | [{{ ru/manual/manage_model/autot_manage_model_010.png?nolink|Рисунок 10.}}] | + | |
- | + | ||
- | Внимание! | + | |
- | Применяемые изменения актуальной модели могут повлиять на объекты, измененные в дочерних ветках. | + | |
+ | |||
+ | |||
+ | |||
+ | |||
+ | {(rater>id=ru_manual_manage_model_branches|name=Ветки|type=vote|trace=ip|headline=off)} |