Содержание
Система должна предоставлять возможность индивидуализации решений «под клиента» без изменения кода самой платформы, предъявляя при этом минимальные требования к разработчикам, посредством специального модуля Synergy IDE.
Доступ к IDE имеют пользователи, у которых есть роль «Разработчик Synergy», и пользователи в группах, у которых есть право «Чтение» хотя бы для одного приложения.
Сущность - набор специфических атрибутов (реестры, формы и т.д.).
Объект - экземпляр с уникальными значениями атрибутов соответствующей сущности (например, реестр «Служебные записки»).
Приложением называется изолированный набор объектов различных сущностей, сгруппированных произвольным образом, характеризующийся уникальным именем, кодом, номером ревизии и правами доступа.
Под изолированностью понимается отсутствие каких-либо зависимостей между объектами приложения или совместно используемых объектов, за исключением автогрупп и настроек платформы.
Экземпляр Synergy может одновременно содержать несколько приложений, однако обязательным условием является уникальность кода объектов, используемых в приложениях, в разрезе сущностей.
Настройки платформы - свойства, общие для всех приложений, содержащихся в одном экземпляре Synergy.
Synergy Developer, разработчик Synergy - пользователь, обладающий ролью «Разработчик Synergy», имеющий полные права доступа ко всем приложениям и настройкам платформы.
Synergy Application Developer, разработчик приложения Synergy - пользователь, входящий в группу, имеюшую права доступа («Чтение» или «Изменение») на отдельное приложение экземпляра Synergy.
Название - мультиязычное поле ввода, обязательное для заполнения.
Код - текстовое поле ввода, обязательное для заполнения. К введенному значению применяются существующие правила валидации и альтернативные сценарии. Значение должно быть уникальным среди приложений, содержащихся в одном экземпляре Synergy.
Ревизия - автоматически вычисляемое число, характеризующее состояние всех объектов приложения. По умолчанию номер ревизии приложения равен 1. Каждое создание и сохранение изменений любого объекта приложения или самого приложения увеличивает номер ревизии.
Права доступа к приложению - набор групп пользователей и соответствующие им права на чтение и изменение объектов приложения.
Существует два вида прав доступа к приложению:
Право «Чтение» для приложения аналогично праву на чтение всех объектов, входящих в приложение, без возможности их редактирования и добавления новых сущностей.
Право «Изменение» для приложения аналогично правам на изменение и назначение прав. Пользователь, входящий в группу, которой предоставлено это право, может создавать, изменять и удалять/скрывать все объекты приложения, а также назначать права на приложение.
Назначение группе права «Изменение» автоматически добавляет ей право «Чтение». Отключение группе права «Чтение» влечет за собой также отключение права «Изменение», если оно было назначено.
При назначении прав доступа к приложению могут использоваться только группы, входящие в это приложение, и автогруппы.
Примечание:
Права доступа групп, входящих в приложение, к папкам Хранилища, регулируются настройками платформы.
Сущность «Приложение» можно открывать, создавать и изменять.
При переходе на страницу
<host>:<port>/Configurator
отображается:
при наличии сведений о последнем открытом приложении - это приложение;
если у пользователя есть ровно одно доступное приложение (с правом «Чтение») - это приложение;
если в экземпляре Synergy есть более одного приложения, на которые у пользователя есть право «Чтение» - первое по списку из доступных приложений.
Для перехода между приложениями используется пункт меню «Приложение» - «Открыть». Этот пункт содержит подпункты - наименование приложений, на которые у пользователя есть как минимум право «Чтение», в текущей локали.
Создание приложения производится из пункта меню «Приложение» - «Создать». Данный пункт доступен пользователю с ролью «Разработчик Synergy».
Кнопка | Действие | Доступность |
---|---|---|
Открыть приложение |
Отображается навигатор по объектам приложения, список приложений закрывается |
Synergy Developer Synergy Application Developer для выбранного приложения |
Создать |
Отображается то же окно, но с пустыми полями |
Synergy Developer |
Добавить |
Отображается диалог выбора групп, содержащихся в текущем приложении |
Synergy Developer Synergy Application Developer с правом «Изменение» для текущего приложения |
Сохранить |
Сохраняются изменения, редактор приложения не закрывается |
Synergy Developer Synergy Application Developer с правом «Изменение» для текущего приложения |
Базовые сущности:
Документооборот:
Управление трудовыми ресурсами:
Интеграция:
Процессы:
Для обеспечения группировки различных объектов в приложении используются папки. Разработчики приложений Synergy могут произвольным образом создавать папки и располагать в них объекты приложения.
Для добавления новой папки Synergy Application Developer, имеющий право «Изменить», в меню «Объект» выбирает пункт «Добавить» - «Папку» (либо в контекстном меню ноды приложения или папки в дереве). Открывается диалог создания/редактирования папки:
Атрибутом папки является Наименование - текстовое поле ввода, обязательное для заполнения. К введенному значению применяются существующие правила валидации кода. Значение должно быть уникальным среди папок, содержащихся в указанной родительской папке. Возможно выполнение альтернативных потоков 1-3.
Новая папка добавляется в папку дерева объектов приложения, которая была выделена в момент создания.
Нода папки в навигаторе содержит контекстное меню с пунктами:
«Добавить» с подпунктами, дублирующими подпункты пункта «Добавить» в панели меню;
«Изменить»: открывается диалог редактирования папки, аналогичный диалогу «Новая папка»;
«Удалить»: выполняется удаление выбранной папки. Возможно выполнение альтернативных потоков 4-5.
Для пользователя Synergy Application Developer, у которого отсутствует право «Изменение» для текущего проекта, добавление новой папки, переименование и удаление существующей недоступно (недоступен пункт на верхней панели меню и не отображаются пункты контекстного меню).
Альтернативный поток 1. Поле «Наименование» не заполнено, выполняется сохранение.
Действие не выполняется, поле «Наименование» подсвечивается красным, отображается ошибка с текстом:
«Укажите наименование папки».
Альтернативный поток 2. Поле «Наименование» создержит неразрешенные символы либо начинается с цифры, выполняется сохранение
Действие не выполняется, поле «Наименование» подсвечивается красным, отображается ошибка с текстом:
*Наименование папки может содержать прописные и строчные буквы латинского алфавита, цифры и _, но не должно начинаться с цифры*
Альтернативный поток 3. Указанное наименование папки не уникально в выбранной родительской папке, выполняется сохранение.
Действие не выполняется, поле «Наименование» подсвечивается красным, отображается ошибка с текстом:
«Данное наименование уже используется в родительской папке».
Альтернативный поток 4. Выполняется удаление папки, причем папка содержит объекты (в том числе скрытые).
Действие не выполняется, отображается ошибка с текстом:
«Данная папка не пуста».
Альтернативный поток 5. Выполняется удаление пустой папки.
Отображается запрос подтверждения действия:
«Вы уверены, что хотите удалить папку?»
Если разработчик подтверждает действие, папка удаляется из навигатора.
Если разработчик отклоняет действие, удаление папки не выполняется.
Ранее были перечислены сущности, которые могут входить в приложение. Добавить объект каждой из этих сущностей можно двумя способами:
из панели меню, пункт «Добавить»;
из контекстного меню папки в навигаторе, пункт «Добавить».
В обоих случаях необходимо выбрать сущность из списка подпунктов пункта «Добавить».
Доступность пункта «Добавить» зависит от наличия у пользователя права «Изменение» для открытого приложения и от ноды, выделенной в навигаторе: пункт меню доступен только в случае, если в навигаторе выделена папка приложения или корневая нода.
После сохранения данных новый объект добавляется в ту папку, которая была выделена в момент вызова создания. До первого сохранения данных новый объект в дереве не отображается.