НАЧАЛО >> Управление профилями настроек АРМ >> Пользовательские preference и overrides📄 Скачать в DOCX
ProfileManager предоставляет общий контракт хранения пользовательских preference для модулей ИРБИС 128. Контракт нужен порталам, рабочим местам, спискам и workflow-представлениям, которым требуется сохранить персональный выбор пользователя без создания собственного хранилища настроек.
Основные функции:
NormalizePreferenceTarget нормализует ссылку на target: owner module, scope, target type, target key, preference key и контекст.SetFavoriteTarget сохраняет избранный target и порядок показа.SetDefaultTarget сохраняет target по умолчанию для проекта, страницы, workflow или портального профиля.SetLastUsedParameters сохраняет последние параметры только при явном разрешении владельца target.SetListViewPreference сохраняет порядок колонок, скрытые колонки, плотность, сортировку и группировку в пределах разрешенных колонок.GetEffectivePreference вычисляет effective preference по слоям system default, project default, project override, binding, user preference и request override.ResetUserPreference сбрасывает пользовательскую настройку без изменения системного профиля и target-объекта.GetSafePreferenceDiagnostics возвращает безопасную диагностику недоступного, удаленного или конфликтующего target.ProfileManager хранит preference в SID-данных записи principal по пути ProfileManager/Preferences. Сохраняется только ссылка на target и значение preference. Определение WorkflowFilter, WorkflowView, страницы, доски, календаря или notification profile остается у модуля-владельца.
Границы ответственности:
WorkflowFilter определяет и исполняет фильтр.WorkflowView определяет доступные поля, колонки и варианты отображения.TaskPortal применяет effective preference в интерфейсе.Security принимает финальное решение доступа.EventBus и Queue отвечают за доставку уведомлений и фоновые операции.Системное описание контракта находится в modules/ProfileManager/system/preference_contract.json. Оно используется TestA и будущими HealthCheck-провайдерами.