Список изменений в системе версии 4.0.0
Обновлен .NET Framework до 4.8
Платформа .NET Framework в ELMA4 обновлена до версии 4.8. В версии ELMA 3.15 использовалась версия .NET Framework 4.6.2. В связи с этим может измениться работа системных функций. Прочитать об изменениях в платформе .NET можно в списке изменений.
Дополнительно полезные ссылки про изменения в .NET:
Обновлены пакеты
- Autofac.4.4.0
- Autofac.Configuration.4.0.1
- Autofac.Extras.DynamicProxy.4.1.0
- Autofac.Mef.4.0.0
- Autofac.Mvc5.4.0.1
- Autofac.Wcf.4.0.0
- AutoMapper.7.0.1
- BitMiracle.LibTiff.NET.2.4.560
- Castle.Core-log4net.4.4.0
- Castle.Core.4.4.0
- Elasticsearch.Net.7.6.1
- EleWise.ELMA.XmlSerializers.1.0.0.1
- FirebirdSql.Data.FirebirdClient.5.8.0
- Glimpse.AspNet.1.9.2
- Glimpse.Mvc5.1.5.3
- HtmlAgilityPack.1.4.9.5
- Iesi.Collections.4.1.0
- log4net.2.0.8
- lz4net.1.0.15.93
- Microsoft.AnalysisServices.11.0.2100.60
- Microsoft.AspNet.Mvc.5.2.3
- Microsoft.AspNet.Razor.3.2.3
- Microsoft.AspNet.WebPages.3.2.3
- Microsoft.AspNet.WebPages.Data.3.2.3
- Microsoft.AspNet.WebPages.WebData.3.2.3
- Mono.Cecil.0.9.6.4
- NEST.7.6.1
- Newtonsoft.Json.12.0.3
- NHibernate.5.2.2.4024
- NHibernate.Caches.SysCache2.5.5.1
- Nuget.Core.2.14.0.1001
- NUnit.3.12.0
- Oracle.ManagedDataAccess.12.1.24160719
- PushSharp.4.0.10.1
- Remotion.Linq.2.2.0
- RouteMagic.1.3
- WebSocket4Net.0.14.1
- ZXing.Net.0.15.0
Удалены пакеты
- Castle.Core-log4net1211.3.2.0.1
- ClaySharp.1.0.0
- DDay.iCal.1.0.2.575
- DevExpress.Web.Asp.10.1.6
- EleWise.ELMA.Compiler.1.0.0
- Fluent.IO.1.0.0
- FluentNHibernate.2.0.3.5
- Microsoft.ApplicationServer.Caching.Client.1.0.4657.2-
- Microsoft.AspNet.Mvc.FixedDisplayModes.1.0.0
- Microsoft.Bcl.1.1.10
- Microsoft.Bcl.Async.1.0.168
- Microsoft.Bcl.Build.1.0.21
- Microsoft.Data.Edm.5.2.0
- Microsoft.Data.OData.5.2.0
- Microsoft.Data.Services.5.2.0
- Microsoft.Data.Services.Client.5.2.0
- Mvc4Futures.4.0.20710.1
- NHibernate.Linq.2.1.2
- Pipelines.Sockets.Unofficial.1.0.7
- RavenDB.Database.3.5.3
- StudioDonder.MvcContrib.Mvc4.3.0.0.99
- System.Data.SqlServerCe.4.0.8482.1
- System.Spatial.5.2.0
- UpgradeMvc3ToMvc4.1.0.2
Редизайн
- добавлена поддержка less файлов. Изменены css файлы на less;
- добавлена поддержка .svg для иконок. Заменены иконки с расширением .png, .gif, .jpg на .svg;
- изменен
Layoutс целью поддержки мобильной адаптивности; - изменено отображение панели инструментов (
Toolbar), удалены или изменены расположения кнопок; - изменено отображение и структура левого меню. Прекращена поддержка
IMenuItemRenderer; - переработано стартовое меню;
- изменено отображение разделов;
- календарь – обновлена версия библиотеки
fullcalendarдо версии 4.3.1; - изменены настройки цветовой схемы;
- изменено отображение элементов истории;
- изменен профиль пользователя;
- переработано отображение поиска и работа с ним;
- изменен контрол типа Да/нет. Добавлен тип отображения Переключатель;
- изменен контрол Дата/время;
- изменен контрол для работы с вложениями, документами, файлами при чтении;
- изменено отображение компонента Сворачиваемая панель;
- изменено отображение компонента Контекстное меню.
Изменения Web Api
Удален сервис работы с командами ICommandService.
~/PublicAPI/REST/EleWise.ELMA.SDK.Web/Command/Commands/Delete/{ID}~/PublicAPI/REST/EleWise.ELMA.SDK.Web/Command/Commands/Get?sinceDate={SINCEDATE}~/PublicAPI/REST/EleWise.ELMA.SDK.Web/Command/Commands/Save
Сущности и PublicApi
Изменения классов сущностей
Сущности наследуются от интерфейса EleWise.ELMA.Model.Entities.IInheritable независимо от наличия наследников или настройки возможности создания наследников. Проверка типа сущности на реализацию указанного интерфейса больше не может быть признаком поддержки наследования и наличия поля TypeUid в базе данных.
Удалены сущности
ShellDescriptorEntityShellFeatureStateEntityShellFetureEntityShellParameterEntityShellStateEntity
Удалены разделы в PublicApi
PublicAPI.Objects.Webсо всеми подразделами
Удалены методы и свойства в PublicApi
PublicAPI.Projects.Permissions.ProjectMetadataHeadViewPermissionPublicAPI.Projects.Project.Create(metadataHead)PublicAPI.Projects.Project.CreateProject(name, metadataHead, startDate, finishDate, projectManager)PublicAPI.Projects.Project.CreateProjectPhase(metadataHead, string name)PublicAPI.Projects.Project.CreateProjectPhase(metadataHead, name, description)PublicAPI.Projects.Project.SaveNew(project)PublicAPI.Projects.Project.SetLimitPlanWorkLog(project, limitPlanWorklog)PublicAPI.Projects.ProjectPlan.GetCurrentPlan(project)PublicAPI.Projects.ProjectPlan.GetPlanByNumber(project, number)PublicAPI.Projects.ProjectTask.Create(project)PublicAPI.Projects.ProjectTask.CreateMilestone(project, subject, executor, executeDate)PublicAPI.Projects.ProjectTask.CreateNormalTask(project, string subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTask.CreateSubTask(parentTask, subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTask.CreateSubTask(parentTask, subject, executor, startDate, endDate, addExecutorToProject)PublicAPI.Projects.ProjectTask.CreateTask(project, subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTask.CreateTask(roject, subject, executor, startDate, endDate, addExecutorToProject)PublicAPI.Projects.ProjectTaskBase.CreateMilestone(project)PublicAPI.Projects.ProjectTaskBase.CreateProjectTask(project)PublicAPI.Projects.ProjectTaskBase.CreateWorkflowProjectTask(project)PublicAPI.Projects.ProjectTaskBase.Milestone.Create(project)PublicAPI.Projects.ProjectTaskBase.ProjectTask.Create(project)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateMilestone(project, subject, executor, executeDate)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateNormalTask(project, subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateSubTask(parentTask, subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateSubTask(parentTask, subject, executor, startDate, endDate, addExecutorToProject)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateTask(project, subject, executor, startDate, endDate)PublicAPI.Projects.ProjectTaskBase.ProjectTask.CreateTask(project, subject, executor, startDate, endDate, addExecutorToProject)PublicAPI.Projects.ProjectTaskBase.WorkflowProjectTask.Create(project)PublicAPI.Projects.Stage.SetProjectStage(project, transition)PublicAPI.Projects.Tasks.CreateMilestone(project)PublicAPI.Projects.Tasks.CreateProjectTask(project)PublicAPI.Projects.Tasks.CreateWorkflowProjectTask(project)PublicAPI.Projects.Types.ProjectWork.Create(metadataHead)PublicAPI.Projects.Types.ProjectWork.CreateProject(name, metadataHead, startDate, finishDate, projectManager)PublicAPI.Projects.Types.ProjectWork.SetLimitPlanWorkLog(project, limitPlanWorklog)PublicAPI.Projects.Objects.BudgetExpense.CreateRef(string name)PublicAPI.Projects.Objects.BudgetExpense.CreateRef(string name, string description)PublicAPI.Projects.Objects.BudgetIncome.CreateRef(string name)PublicAPI.Projects.Objects.BudgetIncome.CreateRef(string name, string description)
Прекращение поддержки FireBird
Поддержка базы данных FireBird прекращена:
- удалены модули и проекты, связанные с ней;
- из инсталлятора убрана опция установки с использованием FireBird;
- удалены пакеты сервера FireBird.
Автоматическое создание файла конфигурации configuration.config задает PostgreSQL в качестве шаблона подключения к базе данных.
Из класса TransformationProvider выделен базовый класс TransformationProviderBase. Из интерфейса ITransformationProvider выделен базовый интерфейс ITransformationProviderBase.
Работа отчетов с внешними источниками данных FireBird оставлена. В качестве провайдера вместо удаленного EleWise.ELMA.Extensions.Firebird.FirebirdTransformationProvider используется EleWise.ELMA.Extensions.FirebirdExternal.FirebirdExternalTransformationProvider.
Конструктор класса EleWise.ELMA.Reports.Processors.DataBaseReportExternalDataSourceProcessor в качестве параметра принимает ITransformationProviderBase вместо ITransformationProvider.
Тэг "firebird" пакетов экспорта-импорта (*.elma3) больше не поддерживается.
Прекращение поддержки внутреннего сервера ELMA
Поддержка внутреннего сервера ELMA прекращена:
- удалены модули и проекты, связанные с ним.
- удалена опция установки ELMA с запуском на внутреннем сервере в инсталляторе;
- удалены проекты:
- веб-сервер ELMA
EleWise.ELMA.WebServer - сервис веб-сервер ELMA
EleWise.ELMA.WebServer.Service - оболочка веб-сервера ELMA
EleWise.ELMA.WebServer.Shell - внутренний сервер ELMA Cassini
Cassini
- удален пакет Cassini.3.8.2.
Изменения индексации и полнотекстового поиска
Обновление поддерживаемой версии Elasticsearch до 7.6.2
Версия сервера полнотекстового поиска Elasticsearch, поставляемая вместе с ELMA3, больше не поддерживается. Теперь поддерживается сервер Elasticsearch версии 7.6.2, поставляемый разработчиками Elasticsearch (https://www.elastic.co/). Скачать установщик можно с официального сайта. Если индексация была настроена на сервер полнотекстового поиска Elasticsearch, она отключается по умолчанию. Для возобновления работы полнотекстового поиска необходимо установить поддерживаемую версию сервера Elasticsearch, провести его настройку, включить индексацию в админке, в разделе Индексация. Для новых пользователей индексация данных по умолчанию выполняется встроенным провайдером Lucene, как и раньше.
Ограничения в конфигурации
Запрет на написание компонентов в скриптах объектов/документов/проектов
Реализации компонентов необходимо перенести в глобальные модули и удалить их из скриптов объектов. При запуске сервера ELMA4 проверяется данное условие, и сервер запустится в ограниченной функциональности, чтобы можно было перенести классы.
Ограничение на использование рефлексии
Возможность публиковать сущности без перезапуска накладывает ограничение на использование рефлексии. Системная рефлексия не будет работать для опубликованных свойств. Для доступа к ним реализованы специальные методы: type.GetReflectionProperty, type.GetReflectionProperties и т. п.
ContextVars.Clear()
Этот метод отмечен устаревшим и запрещено его использование (попытка вызова приведет к исключению). При необходимости использования контекстного кэша с возможностью очистки данных нужно воспользоваться атрибутом [ContextCache("region")] с указанием региона хранения и методами расширения для IContextBoundVariableService для чистки:
ClearRegion– для очистки региона полностью;ClearFor– для очистки значения кэша определенного метода.
База данных
Таблица DB_ActiveConnections больше не используется и в новых базах данных не создается. В конфигурации по умолчанию создается таблица Orleans_MembershipTable со схожей структурой.
Удалены устаревшие процедуры и функции преобразования данных.
Маппинги NHibernate
В ELMA4 больше не используется FluentNHibernate для построения маппингов классов для базы данных. Вместо него используется нативная реализация NHibernate для построения маппингов кодом.
Изменение интерфейсов и классов индексации
Автореализуемый интерфейс EleWise.ELMA.FullTextSearch.Model.IFullTextSearchObject больше не содержит свойства object IndexedObject и ExpandoObject Properties, они перенесены в оболочку EleWise.ELMA.FullTextSearch.Model.IFullTextSearchObjectContainer.
Атрибут EleWise.ELMA.Serialization.IgnoreJsonSerializerAttribute удален.
Для точки расширения EleWise.ELMA.FullTextSearch.ExtensionPoints.IFullTextSearchProvider:
- метод
Index(Type type, List<object> objects)объявлен устаревшим. Вместо него следует использоватьIndex(Type type, IEnumerable<IFullTextSearchObjectContainer> objects).
Для точки расширения EleWise.ELMA.FullTextSearch.ExtensionPoints.IModuleFullTextSearchExtension:
- метод
FillObject(Type cardType, IFullTextSearchObject obj, IEntity entity)объявлен устаревшим. Вместо него следует использоватьFillObject(Type cardType, IFullTextSearchObjectContainer obj, IEntity entity); - метод
CreateFromObject(Type cardType, IFullTextSearchObject obj)объявлен устаревшим. Вместо него следует использоватьCreateFromObject(Type cardType, IFullTextSearchObjectContainer obj).
Усиление безопасности
Активировано использование HTTP заголовков, которые повышают безопасность веб-сайта. Все настройки безопасности вынесены в конфигурационный файл HttpHeaderSecurity.config.
Заголовок X-Robots-Tag
Этот тег позволяет указать поисковым роботам правила загрузки и индексирования определенных страниц сайта. Содержимое ELMA является приватной информацией. Поисковые роботы вряд ли должны иметь доступ в систему. ELMA4 будет отправлять заголовок X-Robots-Tag со значением, запрещающим поисковым роботам индексацию страниц и все остальное.
Заголовок X-Content-Type-Options
Этот заголовок предотвращает атаки с подменой типов MIME. ELMA4 устанавливает значение заголовка в nosniff, чтобы запретить браузерам выполнение контента, похожего на JavaScript, для которого не установлено правильное значение типа контента.
Заголовок X-Frame-Options
Защищает сайт от кликджекинга (clickjacking). Опция пересекается с CSP, там также есть средства для ограничения работы фреймов. В ELMA фреймы используются для отображения предпросмотра (как локальный, так и через OWA), в модуле "Проекты". По этой причине ELMA4 возвращает значение SAMEORIGIN.
Заголовок X-Xss-Protection
Заголовок X-XSS-Protection включает встроенный в браузер фильтр межсайтового скриптинга. Он ищет JavaScript код в GET или POST параметрах. Если найдет, то страница блокируется и показывается предупреждение. Некоторые современные браузеры прекратили поддержку данного заголовка в пользу CSP с отключением встроенного (inline) JavaScript. Однако его установка ничему не повредит, несмотря на то что это и так может являться значением по умолчанию.
Заголовок Referrer-Policy
Настраивает уровень детализации для включения в заголовок Referer при уходе со страницы. Помогает предотвратить утечку данных на сайты, куда идут ссылки. В ряде случаев ELMA полагается на полный RefererUrl, и, если политику некорректно установить, то можно сломать навигацию по страницам. ELMA4 возвращает значение no-referrer-when-downgrade.
Заголовок Content-Security-Policy (сокращенно CSP)
Политика защиты контента – это механизм обеспечения безопасности, с помощью которого можно защищаться от атак с внедрением контента. CSP описывает безопасные источники для загрузки ресурсов, устанавливает правила использования встроенных стилей, скриптов, а также динамической оценки JavaScript, например, с помощью eval. Загрузка с ресурсов, не входящих в "белый список", блокируется.
Принцип действия основан на том, что сервер отправляет заголовок Content-Security-Policy с директивами, которые представляют собой "белые списки". Браузер обрабатывает содержимое страницы согласно директивам, полученным из заголовка. Наиболее востребованные директивы:
- скрипты (script-src);
- стили (style-src);
- изображения (img-src);
- фреймы (frame-src);
- соединения от XHR, WebSockets, EventSourcing (connect-src);
- прочие директивы.
Здесь устанавливать границы безопасности надо очень осторожно: слишком легко поломать сайт.
Тема CSP довольно обширная. Для понимания рекомендуется ознакомиться со статьями:
- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
- https://content-security-policy.com/
- https://habr.com/ru/company/nix/blog/271575/
Валидация перенаправлений (Redirect validation)
В ELMA Url для возврата передается через hidden input формы или через параметры запроса. Валидация перенаправления позволит запретить переход пользователя на потенциально опасную страницу, если злоумышленник как-то добрался до Url для перенаправления. Политика разрешает относительный Url, разрешает редирект с http на https на том же доменном имени. Дополнительно можно указывать доменные имена узлов, куда разрешено перенаправление. Это будет актуально при использовании распределенного файлового хранилища, так как оно пользуется редиректами на узлы точек хранения.
Методы преобразования базы данных dbStructure
Из реализаций точки расширений преобразования базы данных EleWise.ELMA.ExtensionPoints.IDbStructureExtension исключены устаревшие методы.
Использование любых публичных методов реализаций больше не допускается. Оставшиеся публичные методы будут удалены или помечены как устаревшие в ближайших релизах.
Для написания собственных методов следует использовать модификатор internal.
Изменения в поставке справки
Справка теперь классифицируется на 2 категории: онлайн и оффлайн (автономную) справку.
Онлайн справка выводит пользователя на внешний сайт со справкой:
- https://www.elma-bpm.ru/KB/help/RU/ для русского языка;
- https://kb.elma-bpm.com/help/EN/ для английского.
Автономная справка размещает точно такие же страницы справки на сервере ELMA, и пользователь обращается к ней уже через веб-сервер ELMA.
Также пакеты со справкой были разделены по языкам: в пакет попадают ресурсы, относящиеся к одному конкретному языку для одного модуля. Немного изменились правила именования пакетов со справкой. Общий шаблон можно описать следующим образом: ${ModuleName}.Help.${Locale}, где ${ModuleName} – имя модуля, который освещен в справке, а ${Locale} – локаль (язык) справки. Например: EleWise.ELMA.KPI.Web.Help.ru-RU.
Имена пакетов для онлайн- и оффлайн-справки для одного языка и модуля совпадают, но оффлайн-пакеты создаются с ревизией на единицу больше. Это позволяет вытеснить контент предыдущей версии пакета, будь то оффлайн или онлайн.
Теперь в инсталлятор ELMA включаются только пакеты с онлайн-справкой. Они содержат только файлы индекса и за счет этого общий размер установщика уменьшился примерно на 380 Мб. Пакеты с автономной справкой теперь группируются с помощью метапакета в один файл по языковому признаку и поставляются в виде store компонента.
Упаковка пакетов справки командой пакетного менеджера packSln теперь не применяется. Не следует создавать новые nuspec манифесты для справки в проектах решения. Упаковка справки полностью передана в скрипты сборки MSBuild (с упаковкой через nuget.exe).
Изменение атрибутов свойств метаданных, требующих перезагрузку
Атрибут свойств метаданных EleWise.ELMA.Model.Attributes.RestartRequiredAttribute, указывающий на необходимость перезагрузки при публикации, устарел. Вместо него следует использовать EleWise.ELMA.Model.Attributes.PublicationBehaviourAttribute, позволяющий указывать вариативные условия проверки на необходимость перезагрузки.
Прекращение поддержки провайдеров внешней аутентификации
Прекращена поддержка внешней аутентификации через провайдеры. Вместо них следует использовать модули внешней аутентификации. Подробности перехода: https://www.elma-bpm.ru/KB/article-6657.html.
Удалены интерфейсы EleWise.ELMA.Security.IExternalMembershipService и EleWise.ELMA.Security.IDomainExternalMembershipService.
Изменена логика построения запроса для некоторых свойств фильтров
В связи с изменением, описанным выше, устарела логика обработки некоторых свойств в фильтрах. Ранее значение null для свойства не влияло на запрос, а пустой список добавлял условие "... IN (-1)", теперь пустой список и null обрабатываются одинаково и не влияют на запрос. Список фильтров и свойств, которые это затронуло:
IProjectFilter.IdsIProjectFilter.NotIdsITaskBaseExtensionFilter.ProjectIdsIDocumentFilter.IdsIBudgetFilter.NotIdsIMaterialResourceFilter.NotIdsIProjectPlanFilter.NotIdsITechnicalResourceFilter.NotIdsIWorkForceFilter.NotIds
Изменения экспорта-импорта
Версия протокола
Протокол экспорта-импорта обновлен до версии 4. Новые файлы конфигурации имеют расширение *.elma4.
ELMA4 допускает импорт файлов конфигурации и версии 3 и версии 4.
ELMA3 может импортировать только файлы конфигурации версии 3, версия 4 не поддерживается.
Одноинстансность импорта
Запуск импорта пользователем может быть выполнен только в одном экземпляре. До окончания уже запущенного импорта запустить второй невозможно.
Функционал импорта в вебе
Базовый функционал импорта конфигурации добавлен в веб в Администрирование – Система – Импорт. Допускает импорт простых конфигураций и bpmapp-ов (без управления). Для обеспечения работы одноинстансности импорта доступ к запущенному импорту имеет любой пользователь, имеющий доступ к импорту, независимо от того, кто является инициатором. Отображаемая часть лога импорта ограничена, полный лог можно получить из файлов логов сервера.
Изменение класса ConfigImport
В классе EleWise.ELMA.Deploy.ConfigImport. класс более недоступен, вместо него необходимо использовать объекты, получаемые через фабрику IConfigurationImportFactory, отдельно для теста и собственно импорта.
Изменение обработки скриптов метаданных при импорте
В классе пакета метаданных EleWise.ELMA.Deploy.PacketMetadata информация о содержащихся метаданных перенесена из поля SubUserMetadata в свойство SubUserMetadataInfo. В классе экспортируемого объекта метаданных EleWise.ELMA.Deploy.Export.Metadata.MetadataExportObject информация о скриптах перенесена из поля ScriptModuleUid в свойство ScriptModules.
Перенесено перечисление DeployExtensionTypes
EleWise.ELMA.Deploy.ExtensionPoints.DeployExtensionTypes из проекта EleWise.ELMA.SDK перенесен в EleWise.ELMA.SDK.Design. Namespace остался таким же, при использовании может потребоваться пересборка.
Изменение способа инициализации импорта
Менеджер EleWise.ELMA.Deploy.Managers.IDeployManager по-прежнему поддерживает тест, импорт и экспорт конфигураций и bpmapp, но не поддерживает функционал импорта модулей. Является устаревшим и не будет развиваться далее. Для теста и импорта модулей (а так же конфигураций и bpmapp) следует использовать EleWise.ELMA.Deploy.Managers.IContinuedImportService.
Удаление устаревших типов экспорта-импорта версии
Удалена устаревшая точка расширения экспорта-импорта 3.0 EleWise.ELMA.Deploy.ExtensionPoints.PropTypes.ITypeExportImport и ее реализации.
Удалена точка расширения сериализации свойств EleWise.ELMA.Deploy.ExtensionPoints.ICustomValuesEntityXmlSerializer и ее реализация для проектов.
Удалена точка расширения экспорта объектов определенного типа EleWise.ELMA.Deploy.Export.Entities.IEntitiesExport.
Механизм умного преобразования
Этот механизм принес изменения в xml структуре БД:
- механизм создания индексов внутри раздела (т.е. скриптами) объявлен устаревшим. Создавать индексы в скриптах теперь не рекомендуется, хотя поддержка осталась. Все индексы, которые создавались через скрипты, были переведены в новую форму декларативного объявления индексов;
- добавлен специализированный раздел для объявления индексов . Здесь можно объявлять как стандартные формы индексов (те, что создаются методами
ITransformationProvider), так и нестандартные формы, которые можно задать только через SQL запрос; - метод
IFeedIndexesExtension.Createобъявлен устаревшим. Следующие реализацииIFeedIndexesExtensionпосле миграции индексов в xml были удалены, поскольку все методы остались пустые:FeedDefaultIndexes,FeedFirebirdIndexes,FeedOracleIndexes,FeedPostgreSQLIndexes; - метод
FeedManager.IndexesCreateобъявлен устаревшим.
Изменения модуля "Управление договорами"
Удален режим отображения списка документов "Договоры".
Удалена возможность переключения режима отображения списка документов на режим "Договоры".
Удалены классы, описывающие данный режим:
EleWise.ELMA.Documents.Contracts.Web.Components.ContractFolderViewProviderEleWise.ELMA.Documents.Contracts.Web.Controllers.FolderController
Удалены представления, описывающие данный режим:
~\EleWise.ELMA.Documents.Contracts.Web\Views\Folder\ContractGrid.cshtml~\EleWise.ELMA.Documents.Contracts.Web\Views\Folder\ViewContractFolder.cshtml
Известные проблемы в представлениях и скриптах
Неоднозначное соответсвие EnumHelper
Указать полное имя типа EleWise.ELMA.Helpers.EnumHelper.
Не найдено пространство имен "FluentNHibernate"
Убрать using FluentNHibernate; из кода.
Файл "FluentNHibernate.dll" не найден при сборке скриптов
Убрать из списка ссылок FluentNHibernate.
Прочие изменения
Значение по умолчанию для коллекций простых типов
Для наследников IEntity, IFilter, IDataClass свойства коллекции простых типов инициализируются пустым списком, раньше значением по умолчанию был null. Это может отразиться на логике обработки таких свойств: кроме проверки на null может потребоваться проверка наличия элементов в коллекции. Простыми типами считаются типы из списка, кроме object, а так же типы значения (перечисления и структуры).
INotificationManager
C EleWise.ELMA.Notifications.INotificationManager снят атрибут ExtensionPoint. Реализация EleWise.ELMA.Notifications.Impl.NotificationManager преобразована в сервис.
Асинхронные контроллеры
Если в контроллере предполагается использование асинхронных методов, то при построении Route следует использовать AsyncRouteHandler. Например:
new RouteDescriptor
{
Priority = 20,
Route = new Route(
"AreaName/{controller}/{action}/{id}",
new RouteValueDictionary
{
{"area", AreaRegistration.AREA_NAME},
{"controller", "Home"},
{"action", "Index"},
{"id", UrlParameter.Optional}
},
null,
new RouteValueDictionary
{
{"area", CommonAreaRegistration.AREA_NAME}
},
new AsyncRouteHandler()
)
}
При этом следует учитывать, что все асинхронные методы должны в качестве одного из параметров в обязательном порядке принимать CancellationToken и прокидывать его по асинхронным вызовам. В противном случае прерывание асинхронного метода по таймауту веб-запроса работать не будет.
EleWise.ELMA.Security.Services.IAuthenticationService
Добавлены 2 новых метода:
object GetCurrentUserId()– получение идентификатора текущего авторизованного пользователя;void SetAuthenticatedUserIdForRequest(object userId)– установка идентификатора текущего авторизованного пользователя для текущей сессии.
Диагностика ELMA
При отключенной системе диагностики методы public static TCallInfo StartCall<TCallInfo>(Func<TCallInfo> callInfoCreator) и public static AbstractCallInfo StartCall(AbstractCallInfo callInfo) у EleWise.ELMA.Diagnostics.DiagnosticsManager теперь возвращают null вместо фиктивного объекта информации о вызове.
Свойство DefaultValue в BoolSettings объявлено устаревшим
Свойство DefaultValue в BoolSettings объявлено устаревшим. Необходимо использовать свойство BoolDefaultValue. Для модулей требуется пересохранить сущности через плагин для VisualStudio. Если настройки использовались в процессах/объектах системы в скриптах – следующая публикация процесса/объекта упадет с требованием использовать другое свойство BoolDefaultValue.
EleWise.ELMA.ExtensionPoints.IEntityMetadataSearcher
Использование только для EQL-поиска.
Добавлен новый метод:
EntityMetadata FindEntityMetadata(Guid uid)– найти метаданные по уникальному идентификатору.
Реализации точки расширения возвращают ограниченные данные, достаточные для работы EQL-поиска.
OnceStepSchedulerSweep и StepSchedulerSweep
Удалены.
Прекращение поддержки AppFabric
Удален модуль AppFabric. Проверка лицензионности Redis, а также тест на Enterprise редакцию ELMA перенесены на модуль с провайдером Oracle (ранее в этом участвовал модуль EleWise.ELMA.Cache.AppFabric).
Удаление устаревшего кода
Удалены типы
EleWise.ELMA.KPI.DTO.Managers.IKpiSettingsDTOManagerEleWise.ELMA.KPI.DTO.Managers.IProcessDTOManagerEleWise.ELMA.KPI.DTO.Managers.IProspectDTOManagerEleWise.ELMA.KPI.DTO.Managers.KpiSettingsDTOManagerEleWise.ELMA.KPI.DTO.Managers.ProcessDTOManagerEleWise.ELMA.KPI.DTO.Models.DocumentDTOEleWise.ELMA.KPI.DTO.Models.ObjectManagementDTOEleWise.ELMA.KPI.DTO.Models.ProcessDTOEleWise.ELMA.KPI.DTO.Models.ProspectDTOEleWise.ELMA.KPI.DTO.Models.StrategyMapDTOEleWise.ELMA.KPI.Extensions.KpiProcessExtensionsEleWise.ELMA.KPI.Extensions.ObjectManagementExtensionsEleWise.ELMA.KPI.Web.Components.ToolbarButtons.SmartTaskToolbarButtonEleWise.ELMA.KPI.Web.Menu.CustomMenuItemRendererEleWise.ELMA.Messaging.SMS.SmsSenderEleWise.ELMA.Projects.Managers.ResourceCalendarManager(используйтеProductionScheduleManagerиResourceProductionScheduleValidator)EleWise.ELMA.Projects.ViewItems.CalendarViewItemEleWise.ELMA.Projects.ViewItems.ContractorProjectsGridViewItemEleWise.ELMA.Runtime.Db.DbConnectionsCheckerEleWise.ELMA.Runtime.NH.CustomFluentMappingsContainerEleWise.ELMA.BPM.Web.Security.ExtensionPoints.EntityModelBinderWithElevatedPrivilegiesProviderEleWise.ELMA.Workflow.Processes.Web.Components.WorkflowInstanceFilterPropertyStylerEleWise.ELMA.Workflow.Processes.Web.Models.WorkflowInstanceTaskBaseExtensions(используйтеWorkflowTaskBaseExtensions)EleWise.ELMA.Workflow.Web.Extensions.CustomTypesRoutesGridObjectSelector(используйтеCustomTypesRoutesGridObjectSelectorExtended)EleWise.ELMA.Workflow.BPMN.Diagrams.Elements.ISwimlaneChangedHandler(используйтеISwimlaneChangedExecHandler)EleWise.ELMA.Workflow.Models.WorkflowTaskBaseExtensions.ExecuteStatusEleWise.ELMA.BPM.Web.Reports.Security.InstanceSettingsPermissionEleWise.ELMA.BPM.Web.Reports.Security.ReportRoleTypesEleWise.ELMA.Diagnostics.BackgroundTaskInfo(используйтеBackgroundTaskCallInfo)EleWise.ELMA.Diagnostics.Events.IndexCallExecuteCancelEventEleWise.ELMA.Diagnostics.Events.IndexQueryExecuteCancelEventEleWise.ELMA.Diagnostics.Statistics.BackgroundTasksStatistics(используйтеBackgroundTaskMetric)EleWise.ELMA.Diagnostics.Statistics.BackgroundTasksStatisticsItem(используйтеBackgroundTaskMetric)EleWise.ELMA.Diagnostics.Statistics.CacheCallsTotalStatistics(используйтеCacheMetric)EleWise.ELMA.Diagnostics.Statistics.CommonStatisticsEleWise.ELMA.Diagnostics.Statistics.IndexCallsStatistics(используйтеIndexCallMetric)EleWise.ELMA.Diagnostics.Statistics.IndexCallsStatisticsItem(используйтеIndexCallMetric)EleWise.ELMA.Diagnostics.Statistics.IndexCallsTotalStatistics(используйтеIndexCallMetric)EleWise.ELMA.Diagnostics.Statistics.IndexQueriesStatistics(используйтеIndexQueryMetric)EleWise.ELMA.Diagnostics.Statistics.IndexQueriesStatisticsItem(используйтеIndexQueryMetric)EleWise.ELMA.Diagnostics.Statistics.IndexQueriesTotalStatistics(используйтеIndexQueryMetric)EleWise.ELMA.Diagnostics.Statistics.MainStatistics(используйтеMetricsContainerиMetricsGroup)EleWise.ELMA.Diagnostics.Statistics.MethodCallsStatistics(используйтеMethodMetric)EleWise.ELMA.Diagnostics.Statistics.MethodCallsStatisticsItem(используйтеMethodMetric)EleWise.ELMA.Diagnostics.Statistics.ScriptCallsStatistics(используйтеScriptMetric)EleWise.ELMA.Diagnostics.Statistics.ScriptCallsStatisticsItem(используйтеScriptMetric)EleWise.ELMA.Diagnostics.Statistics.SqlQueriesStatistics(используйтеSqlQueryMetric)EleWise.ELMA.Diagnostics.Statistics.SqlQueriesStatisticsItem(используйтеSqlQueryMetric)EleWise.ELMA.Diagnostics.Statistics.SqlQueriesTotalStatistics(используйтеSqlQueryMetric)EleWise.ELMA.Diagnostics.Statistics.WebRequestsStatistics(используйтеWebRequestMetric)EleWise.ELMA.Diagnostics.Statistics.WebRequestsStatisticsItem(используйтеWebRequestMetric)EleWise.ELMA.Documents.Contracts.Web.Components.ContractFolderViewProviderEleWise.ELMA.Documents.Contracts.Web.Controllers.FolderControllerEleWise.ELMA.Web.API.CommandServiceEleWise.ELMA.Web.API.ICommandServiceEleWise.ELMA.Web.Mvc.DynamicPortletControl(используйтеPortlePersonalization.EnableAsyncLoading)EleWise.ELMA.Web.Mvc.ExtensionPoints.IObjectCreator(используйтеIFormCreator)EleWise.ELMA.Web.Mvc.ExtensionPoints.ISessionHandler(используйтеIAuthenticatedSessionEventHandler)EleWise.ELMA.Web.Mvc.ExtensionPoints.MultiUserWork.MultiUserPlanWorkExtensionEleWise.ELMA.Web.Mvc.Services.WebContextBoundVariableService(используйтеTLSContextBoundVariableService)EleWise.ELMA.BPM.Web.Calendar.Menu.CalendarMenuItemRendererEleWise.ELMA.Calendar.CustomSet<T,TZ>EleWise.ELMA.Calendar.ProductionSchedule.DayEleWise.ELMA.Calendar.ProductionSchedule.DayStateEleWise.ELMA.Calendar.ProductionSchedule.ExceptionDayEleWise.ELMA.Calendar.ProductionSchedule.ExceptionDayTypeEleWise.ELMA.Messages.Web.Menu.MessagesMenuItemRendererEleWise.ELMA.Messages.Web.Models.InfoChannelMessageChild.MessageStatusEleWise.ELMA.BPM.Web.Common.Extensions.FilterMenuItemRendererEleWise.ELMA.Documents.Web.Menu.DocumentsTreeMenuItemRendererEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IDocumentAttachmentExtension(используйтеIObjectAttachmentExtension)EleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFieldsFilterExtension(используйтеIFilterPropertiesExtensionиIFilterPropertyEditorExtension)EleWise.ELMA.BPM.Web.Common.ExtensionPoints.HidePropertyFirstColumnsFixEleWise.ELMA.BPM.Web.Common.ExtensionPoints.PropertyEditorFixEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFilterPortletGridIdEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFilterPropertyEditor(используйтеIFilterPropertyEditorExtensionиIFilterPropertiesExtension)EleWise.ELMA.BPM.Web.Common.ExtensionPoints.PropertyDisplayNameFixEleWise.ELMA.BPM.Web.Common.ExtensionPoints.FilterPropertyEditorFixEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFilterPropertyReloadFormHandler(используйтеIFilterPropertiesExtensionиIFilterPropertyEditorExtension)EleWise.ELMA.BPM.Web.Common.ExtensionPoints.PropertyFixEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFilterPropertyVisibility(используйтеIFilterPropertiesExtension)EleWise.ELMA.BPM.Web.Common.ExtensionPoints.PropertyVisibleFixEleWise.ELMA.BPM.Web.Common.Extensions.IFilterTreeExtension(используйтеEleWise.ELMA.BPM.Web.Common.ExtensionPoints.IFilterTreeButtonsExtension)EleWise.ELMA.Documents.DigitalSignature.CryptoProviderManager(используйтеEleWise.ELMA.Documents.Services.SignCryptoProviderService)EleWise.ELMA.CRM.Web.Components.ContractorAttachmentsGridViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorAttachmentsTabViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorAcessingGridViewItemRendererEleWise.ELMA.CRM.Web.Components.SalePermissionGridViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipCallPermissionGridViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipMailPermissionGridViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipMeetingPermissionGridViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorAcessingTabViewItemRendererEleWise.ELMA.CRM.Web.Components.SalePermissionTabViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipCallPermissionTabViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipMailPermissionTabViewItemRendererEleWise.ELMA.CRM.Web.Components.RelationshipMeetingPermissionTabViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorRelationshipsGridViewItemRendererEleWise.ELMA.CRM.Web.Components.SaleRelationshipsGridViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorRelationshipsTabViewItemRendererEleWise.ELMA.CRM.Web.Components.SaleRelationshipsTabViewItemRendererEleWise.ELMA.CRM.Web.Components.SaleProductsTabViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorTasksGridViewItemRendererEleWise.ELMA.CRM.Web.Components.SaleTasksGridViewItemRendererEleWise.ELMA.CRM.Web.Components.ContractorTasksTabViewItemRendererEleWise.ELMA.CRM.Web.Components.SaleTasksTabViewItemRendererEleWise.ELMA.CRM.Web.Extensions.ComponentAddressProviderEleWise.ELMA.CRM.Components.IAddressProvider(используйтеEleWise.ELMA.CRM.ExtensionPoints.IAddressProvider,EleWise.ELMA.CRM.Web.Extensions.IAddressProviderWebиEleWise.ELMA.CRM.Web.Extensions.IAddressBaseSettings)EleWise.ELMA.CRM.Managers.RelationshipEditRightsCheckerEleWise.ELMA.CRM.Extensions.ContractorContactsGridViewItemBuilder<TM>(используйтеTabViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorRelationshipsGridViewItemBuilder<TM>(используйтеRelationshipsGridViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorTasksTabViewItemBuilder<TM>(используйтеTabViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorTasksGridViewItemBuilder<TM>(используйтеTasksGridViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorAttachmentsTabViewItemBuilder<TM>(используйтеTabViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorAcessingTabViewItemBuilder<TM>(используйтеTabViewItemBuilder)EleWise.ELMA.CRM.Extensions.SaleAcessingTabViewItemBuilder<TM>(используйтеTabViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorAcessingGridViewItemBuilder<TM>(используйтеPermissionGridViewItemBuilder)EleWise.ELMA.CRM.Extensions.ContractorAttachmentsGridViewItemBuilder<TM>(используйтеAttachmentsGridViewItemBuilder)EleWise.ELMA.CRM.ViewItems.ContractorAttachmentsGridViewItem(используйтеAttachmentsGridViewItem)EleWise.ELMA.CRM.ViewItems.ContractorAttachmentsTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.ContractorAcessingGridViewItem(используйтеPermissionGridViewItem)EleWise.ELMA.CRM.ViewItems.SalePermissionGridViewItem(используйтеPermissionGridViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipCallPermissionGridViewItem(используйтеPermissionGridViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipMailPermissionGridViewItem(используйтеPermissionGridViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipMeetingPermissionGridViewItem(используйтеPermissionGridViewItem)EleWise.ELMA.CRM.ViewItems.ContractorAcessingTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.SalePermissionTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipCallPermissionTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipMailPermissionTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.RelationshipMeetingPermissionTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.ContractorRelationshipsGridViewItem(используйтеRelationshipsGridViewItem)EleWise.ELMA.CRM.ViewItems.SaleRelationshipsGridViewItem(используйтеRelationshipsGridViewItem)EleWise.ELMA.CRM.ViewItems.ContractorRelationshipsTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.SaleRelationshipsTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.SaleProductsTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.ContractorTasksGridViewItem(используйтеTasksGridViewItem)EleWise.ELMA.CRM.ViewItems.SaleTasksGridViewItem(используйтеTasksGridViewItem)EleWise.ELMA.CRM.ViewItems.ContractorTasksTabViewItem(используйтеTabViewItem)EleWise.ELMA.CRM.ViewItems.SaleTasksTabViewItem(используйтеTabViewItem)EleWise.ELMA.Helpers.AppSettingsHelper(используйтеSR.GetSetting)EleWise.ELMA.Model.Metadata.ExtensionPoints.IActionDefaultFormEleWise.ELMA.Model.Metadata.ExtensionPoints.IAfterPublishResult(используйтеIMetadataPublishFinishedEventHandler)EleWise.ELMA.Model.Metadata.ExtensionPoints.AfterPublishResultObsoleteComponentEleWise.ELMA.Model.Metadata.ExtensionPoints.IFormSettingInfoEleWise.ELMA.Model.Metadata.ExtensionPoints.ITargetActionDefaultFormEleWise.ELMA.Model.Metadata.IMetadataEventsDispatcher(используйтеIMetadataPublishFinishedEventHandlerиIMetadataSaveFinishedEventHandler)EleWise.ELMA.Model.Metadata.IMetadataPublishEventHandler(используйтеIMetadataPublishFinishedEventHandler)EleWise.ELMA.Model.Metadata.IMetadataSaveEventHandler(используйтеIMetadataSaveFinishedEventHandler)EleWise.ELMA.Model.Metadata.MetadataEventDispatcherEleWise.ELMA.Model.Views.IElementViewItemEleWise.ELMA.Scheduling.Impl.StepScheduler.PendingJobEleWise.ELMA.Scheduling.ISchedulerTaskEleWise.ELMA.Tasks.ExtensionPoints.IOvertimeWorkLogExtension2ExtensionsEleWise.ELMA.Tasks.ExtensionPoints.IReplacementTaskObjectsFilterExtension
Удалены методы
void PrepareRelationshipUsers()в типеEleWise.ELMA.CRM.Web.Extensions.IRelationshipBaseModelvoid PrepareRelationshipUsers()в типеEleWise.ELMA.CRM.Web.Models.RelationshipModelprotected virtual void MapDocuments(IMappingExpression<TSource, TDestination> map, Expression<Func<TDestination, object>> attachmentsExpr, Expression<Func<TDestination, object>> documentAttachmentsExpr, Func<TSource, Collection<DocumentDTO>> dtoDocumentsFunc)в типеEleWise.ELMA.KPI.DTO.AutoMaps.EntityBaseMap<TSource, TDestination>public static IEnumerable<ProcessDTO> GetProcesses(this KpiModel model, ResponsibilityItemDTO group)в типеEleWise.ELMA.KPI.DTO.Extensions.ResponsibilityItemExtensionspublic static IEnumerable<ObjectManagementDTO> GetObjectsManagement(this KpiModel model, ResponsibilityItemDTO group)в типеEleWise.ELMA.KPI.DTO.Extensions.ResponsibilityItemExtensionspublic static bool IsMain(this IIndicator indicator)в типеEleWise.ELMA.KPI.Extensions.IndicatorExtensionspublic static IEnumerable<ISMARTTask> GetSmartTasks(this IKpiAction action, DateTime? periodStart = null, DateTime? periodEnd = null)в типеEleWise.ELMA.KPI.Extensions.KpiActionExtensionspublic static long GetSmartTotalCount(this IKpiAction action, DateTime? periodStart = null, DateTime? periodEnd = null)в типеEleWise.ELMA.KPI.Extensions.KpiActionExtensionspublic static long GetSmartCompleteCount(this IKpiAction action, DateTime? periodStart = null, DateTime? periodEnd = null)в типеEleWise.ELMA.KPI.Extensions.KpiActionExtensionspublic virtual void AssignTemplateApprove(long matrixId, long matrixTemplateId)в типеEleWise.ELMA.KPI.Managers.PerformanceMatrixManagerpublic virtual void AssignTemplateControl(long matrixId, long matrixTemplateId)в типеEleWise.ELMA.KPI.Managers.PerformanceMatrixManagerpublic new virtual void CheckTaskExpiration(DateTime checkTime)в типеEleWise.ELMA.KPI.Managers.SmartTaskManagerpublic StrategyMapDTO GetStrategyMap(Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelpublic ProspectDTO GetProspect(Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelpublic ProcessDTO GetProcess(Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelpublic ObjectManagementDTO GetObjectManagement(Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelpublic static void SetupNewModel(this KpiModel model)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static void AddDefaultUnitsMeasure(this KpiModel model)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static void AddDefaultProspects(this KpiModel model)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static ProcessDTO GetProcess(this KpiModel model, Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static StrategyMapDTO GetStrategyMap(this KpiModel model, Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static ProspectDTO GetProspect(this KpiModel model, Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static ObjectManagementDTO GetObjectManagement(this KpiModel model, Guid id)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static IEnumerable<ProcessDTO> GetRootProcesses(this KpiModel model)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static IEnumerable<ProcessDTO> GetDFSProcesses(this KpiModel model, ProcessDTO process)в типеEleWise.ELMA.KPI.Models.KpiModelExtensionspublic static bool HasPermissionForPanel(Guid uid)в типеEleWise.ELMA.KPI.Security.PermissionsProviderpublic NShape CreateShape(ProspectDTO prospect)в типеEleWise.ELMA.KPI.StrategyMap.ModelShapeFactorypublic static T GetFieldValue<T>(this object target, string fieldName, T defaultValue)в типеEleWise.ELMA.KPI.Utils.ReflectionUtilsprotected virtual void Visit(IEnumerable<ProcessDTO> processes, List<ValidationError> errors)в типеEleWise.ELMA.KPI.Validation.Validators.ValidatorBaseprotected virtual void Visit(IEnumerable<ObjectManagementDTO> objectsManagement, List<ValidationError> errors)в типеEleWise.ELMA.KPI.Validation.Validators.ValidatorBasepublic virtual void Save(ElmaStoreComponentManifest componentManifest, BPMAppManifest bpmAppManifest, System.Drawing.Image image)в типеEleWise.ELMA.BPMApps.Managers.BPMAppManagerbool CanBeSaved(Dictionary<string, object> propValues, Dictionary<string, string> serviceData)в типеEleWise.ELMA.Deploy.Import.ExtensionPoints.IEntityImportSaveActionspublic virtual bool CanBeSaved(Dictionary<string, object> propValues, Dictionary<string, string> serviceData)в типеEleWise.ELMA.Deploy.Import.ExtensionPoints.EntityImportSaveActionsvoid GeneratePreview(string path, BinaryFile file);в типеEleWise.ELMA.Files.Previews.IFilePreviewServiceIFilePreviewCreator GetFilePreviewCreator(string ext)в типеEleWise.ELMA.Files.Previews.IFilePreviewServiceProviderbool GeneratePreview(string filePreviewDir, string fileId)в типеEleWise.ELMA.Files.Previews.IFilePreviewServiceProviderpublic IFilePreviewCreator GetFilePreviewCreator(string ext)в типеEleWise.ELMA.Files.Previews.FilePreviewServiceProviderpublic abstract bool GeneratePreview(string filePreviewDir, string fileId)в типеEleWise.ELMA.Files.Previews.FilePreviewServiceProviderpublic virtual void ExecuteQueueItem(long id)в типеEleWise.ELMA.Files.Previews.FilePreviewServiceProviderpublic void GeneratePreview(string filePreviewDir, BinaryFile file)в типеEleWise.ELMA.Files.Previews.FilePreviewServicepublic override bool GeneratePreview(string filePreviewDir, string fileId)в типеEleWise.ELMA.FilePreview.LocalService.Services.FilePreviewServiceLocalvoid ClearSatus()в типеEleWise.ELMA.Messaging.SMS.Services.ISmsBalanceServicepublic void ClearSatus()в типеEleWise.ELMA.Messaging.SMS.Services.SmsBalanceServicevoid Fill(DocumentInfo info, HttpRequestBase request, UrlHelper url)в типеEleWise.ELMA.Documents.Web.Extensions.ICreatePopupDocumentExtension(используйтеFill(IDocument document, HttpRequestBase request, UrlHelper url))void Fill(DocumentInfo info, HttpRequestBase request, UrlHelper url)в типеEleWise.ELMA.Projects.Web.Extensions.CreatePopupDocumentExtension(используйтеFill(IDocument document, HttpRequestBase request, UrlHelper url))public static PermissionRoleTypeSelectorModel CreateNew(string popupId, string permissionPopupName, UrlHelper url, bool multiSelect, IProject project, bool allowEmpty = false, bool checkUserReplacement = false)в типеEleWise.ELMA.Projects.Web.Extensions.ProjectTaskExecutorExtensions(используйтеCreateNew(string popupId, string permissionPopupName, UrlHelper url, bool multiSelect, EntityProjectTaskExecutorSettings Settings))public static List<IUser> GetProjectTaskExecutors(IProjectTaskExecutor executor, IProject project)в типеEleWise.ELMA.Projects.Components.ProjectPlanExecutorHelper(используйтеGetTaskExecutors)public static IPublishPlanStateInfo PublishPlanState(this IProject project)в типеEleWise.ELMA.Projects.Extensions.ProjectsExtension(используйтеGetPublishPlanState)public static IProjectPlan Plan(this IProject project)в типеEleWise.ELMA.Projects.Extensions.ProjectsExtension(используйтеGetPlan)public MilestoneBuilder Create(IProject project)в типеEleWise.ELMA.Projects.Managers.MilestoneManager(используйтеCreateTo)public void Delete(IProjectAccess entity, bool withPreProcessing)в типеEleWise.ELMA.Projects.Managers.ProjectAccessManager(используйтеDelete(IProjectAccess))public void CheckPermission(Permission permission, T target)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеSecurityService.HasPermission())public bool HasPermission(Permission permission, T target)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеSecurityService.HasPermission())public bool HasPermission(IUser user, Permission permission, T target)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеSecurityService.HasPermission())public bool HasPermission(Permission permission)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеSecurityService.HasPermission())public bool HasPermission(IUser user, Permission permission)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеSecurityService.HasPermission())public void CheckPermission(Permission permission)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеUse SecurityService.HasPermission())public ICollection<T> FindAllWithElevatedPrivilegies()в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public void SetSubTasksPropertyNotShowInLists(IProjectTaskBase task, bool val, bool activate = false)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>protected virtual void ChangePlanRunProcess(IProjectPlan plan)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеProjectPlanManager.Instance.ChangePlanRunProcess)public void DeleteOldManager(T entity, IUser oldManager, bool isNew = false)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеOldManagerDelete)public IProject Create(IProjectMetadataHead metadataHead)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public virtual void ChangeProjectRunProcess(T project)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеProjectPlanManager.Instance.ChangeProjectRunProcess)public virtual void ChangeTaskPropertyNotShowInLists()в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеProjectPlanManager.Instance.ChangeTaskPropertyNotShowInLists)public virtual void ChangeTaskPropertyNotShowInLists(TId projectId, bool saveAfterChange = false)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеProjectPlanManager.Instance.ChangeTaskPropertyNotShowInLists)public virtual void ChangeTaskPropertyNotShowInLists(T project, bool saveAfterChange = false)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеProjectPlanManager.Instance.ChangeTaskPropertyNotShowInLists)public virtual void OverduePhaseTaskWorking()в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеOverdueTaskWorking)public virtual bool IsAvailableImportFromMsProject(IProjectPlan projectPlan)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>(используйтеIsAvailableImportFromMsProjectTo)public virtual T CreateProject(string name, IProjectMetadataHead metadataHead, DateTime startDate, DateTime finishDate, IUser projectManager)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public virtual void SetLimitPlanWorkLog(T project, bool limitPlanWorklog)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public virtual void SetProjectStage(T project, IProjectLifeCycleTransition transition)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public void SaveNew(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectManager<T, TId>public void CheckPermission(Permission permission, IProjectMetadataHead target)в типеEleWise.ELMA.Projects.Managers.ProjectMetadataHeadManager(используйтеSecurityService.HasPermission())public bool HasPermission(Permission permission, IProjectMetadataHead target)в типеEleWise.ELMA.Projects.Managers.ProjectMetadataHeadManager(используйтеSecurityService.HasPermission())public bool HasPermission(IUser user, Permission permission, IProjectMetadataHead target)в типеEleWise.ELMA.Projects.Managers.ProjectMetadataHeadManager(используйтеSecurityService.HasPermission())public virtual IProjectPhase CreateProjectPhase(IProjectMetadataHead metadataHead, string name)в типеEleWise.ELMA.Projects.Managers.ProjectPhaseManagerpublic virtual IProjectPhase CreateProjectPhase(IProjectMetadataHead metadataHead, string name, string description)в типеEleWise.ELMA.Projects.Managers.ProjectPhaseManagerpublic bool HasPermissionToApprove(IProjectMetadataHead metadataHead)в типеEleWise.ELMA.Projects.Managers.ProjectPlanApprovalTaskManagerpublic bool HasPermissionToApprove(IUser user, IProjectMetadataHead metadataHead)в типеEleWise.ELMA.Projects.Managers.ProjectPlanApprovalTaskManagerpublic List<IUser> GetUsersToPermissionToApprove(IProjectMetadataHead metadataHead)в типеEleWise.ELMA.Projects.Managers.ProjectPlanApprovalTaskManagerpublic virtual void AddExecutorsToResourcesExec(IProjectPlanItem planItem, IProject project = null, bool save = true)в типеEleWise.ELMA.Projects.Managers.ProjectPlanItemManager(используйтеAddExecutorsToResources)public static void SetPlans(IProjectPlan plan)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic static List<IProjectPlan> GetPlans()в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual bool IsAvailableProjectsPlanSaveAndApprove(IProjectPlan projectPlan)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual bool IsAvailableProjectsPlanSaveAndPublish(IProjectPlan plan)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual IProjectPlan Create(IProject project, Action<IProjectPlan> preSave = null)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеCreateTo)public virtual long GetNewNumber(IProject project, bool save = false)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual IProjectPlan CreateFrom(IProjectPlan oldPlan, bool cloneItems = true, bool cloneLinks = true, IProject newProject = null, Action<IProjectPlan> preSave = null)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual IProjectPlan Publish(IProjectPlan plan, Dictionary<IProjectPlanItem, List<Pair<ExecutorSetType, List<IUser>>>> executors, bool addToParticipants = true, List<long> closingWptPrevPublishIdsList = null)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic virtual IProjectPlan Publish(IProjectPlan plan, Dictionary<IProjectPlanItem, List<Pair<ExecutorSetType, List<IUser>>>> executors, bool terminateActiveProcesses, bool addToParticipants = true, List<long> closingWptPrevPublishIdsList = null)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManagerpublic List<Tuple<IProjectPlanItem, bool, bool>> ConflictsWithBudget(long newPlanId)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеConflictsWithBudgetForPlan)public long GetLastSavedPlanIdForProject(long projectId)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеGetLastSavedPlanIdForProjectTo)public IProjectPlan CreateOrClone(IProject project, IProjectPlan oldPlan)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеCreateOrCloneTo)public IProjectPlan GetCurrentPlan(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеCurrentPlan)public IProjectPlan GetPlanByNumber(IProject project, long number)в типеEleWise.ELMA.Projects.Managers.ProjectPlanManager(используйтеGetPlanByNumberTo)bool IsActiveForPublish(IProjectPlanItem planItem)в типеEleWise.ELMA.Projects.Managers.IProjectTaskBaseManager(используйтеProjectPlanItemManager.IsActiveForPublish)void ChangeTaskPropertyNotShowInLists(IProjectTaskBase task, bool saveAfterChange = false, bool updateStatus = true)в типеEleWise.ELMA.Projects.Managers.IProjectTaskBaseManager(используйтеChangeTaskVisibility)public virtual bool IsActiveForPublish(IProjectPlanItem planItem)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManager<T, TF>(используйтеProjectPlanItemManager.IsActiveForPublish)public T Load(long id, bool enabledSecurity)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManager<T, TF>(используйтеLoad)public T LoadOrNull(long id, bool enabledSecurity)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManager<T, TF>(используйтеLoadOrNull)public virtual bool IsAvailableDelete(T task)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManager<T, TF>public void ChangeTaskPropertyNotShowInLists(IProjectTaskBase projectTaskBase, bool saveAfterChange = false, bool updateStatus = true)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManager<T, TF>(используйтеChangeTaskVisibility)public virtual ProjectTaskBuilder CreateProjectTask(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManagerpublic MilestoneBuilder CreateMilestone(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManagerpublic virtual WorkflowProjectTaskBuilder CreateWorkflowProjectTask(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectTaskBaseManagerpublic override bool IsActiveForPublish(IProjectPlanItem planItem)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManager(используйтеProjectPlanItemManager.IsActiveForPublish)public virtual ProjectTaskBuilder Create(IProject project)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManager(используйтеCreateTo)public virtual IProjectTask CreateNormalTask(IProject project, string subject, IUser executor, DateTime startDate, DateTime endDate)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic virtual IMilestone CreateMilestone(IProject project, string subject, IUser executor, DateTime executeDate)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic virtual IProjectTask CreateTask(IProject project, string subject, IUser executor, DateTime startDate, DateTime endDate)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic virtual IProjectTask CreateTask(IProject project, string subject, IUser executor, DateTime startDate, DateTime endDate, bool addExecutorToProject)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic virtual IProjectTask CreateSubTask(IProjectTask parentTask, string subject, IUser executor, DateTime startDate, DateTime endDate)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic virtual IProjectTask CreateSubTask(IProjectTask parentTask, string subject, IUser executor, DateTime startDate, DateTime endDate, bool addExecutorToProject)в типеEleWise.ELMA.Projects.Managers.ProjectTaskManagerpublic void CheckProjectPublishing(long projectId)в типеEleWise.ELMA.Projects.Managers.PublishPlanStateInfoManager(используйтеCheckPublishing)public virtual bool IsProjectPublishing(long projectId)в типеEleWise.ELMA.Projects.Managers.PublishPlanStateInfoManager(используйтеIsPublishing(IProjectPlanObject planObject)", true))public virtual bool IsProjectMetadataHeadPublishing(Guid headUid)в типеEleWise.ELMA.Projects.Managers.PublishPlanStateInfoManager(используйтеIsPublishing)public virtual bool IsAvailableDelete(IRisk risk)в типеEleWise.ELMA.Projects.Managers.RiskManagerpublic virtual WorkflowProjectTaskBuilder Create(IProject project)в типеEleWise.ELMA.Projects.Managers.WorkflowProjectTaskManager(используйтеCreateTo)public static readonly Permission ProjectMetadataHeadViewPermissionв типеEleWise.ELMA.Projects.ProjectPermissionProviderpublic override string CutCommentsFromCommandtext(string commandText)в типеEleWise.ELMA.Extensions.Oracle.OracleTransformationProviderpublic override string CutCommentsFromCommandtext(string commandText)в типеEleWise.ELMA.Extensions.PostgreSQL.PostgreSQLTransformationProvidernew string CutCommentsFromCommandtext(string commandText)в типеEleWise.ELMA.Runtime.Db.Migrator.Framework.ITransformationProviderpublic static CallContextSessionOwner CreateFromCurrent()в типеEleWise.ELMA.Runtime.NH.CallContextSessionOwnerpublic void Start()в типеEleWise.ELMA.Runtime.NH.CallContextSessionOwnerpublic static IesiSortedSet<T> Create<TKey>(string typeUidProperty, string subTypeUidProperty, Func<T, TKey> propertyExpression, ListSortDirection order)в типеnamespace EleWise.ELMA.Runtime.NH.ElmaCollectionTypeFactorypublic void Complete(IAbsence absence)в типеEleWise.ELMA.Security.Managers.AbsenceManager(используйтеCancel)public virtual void CompleteOldAbsences()в типеEleWise.ELMA.Security.Managers.AbsenceManagerpublic static void ClearGroupsByUserCache(long userId)в типеEleWise.ELMA.Security.Managers.UserGroupManagerpublic virtual void SaveUserWithGroups([NotNull] Models.IUser obj, IEnumerable<long> newGroups, Func<IUserGroup, bool> oldGroupsCondition = null)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеSaveUserWithGroups([NotNull] Models.IUser obj, string password, IEnumerable<long> newGroups, Func<IUserGroup, bool> oldGroupsCondition = null))public virtual void Save([NotNull] Models.IUser obj, bool saveAsBlocked)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеSave([NotNull] Models.IUser obj, string password, bool saveAsBlocked))protected virtual bool CanBlock(long userId)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеCanBlock(Models.IUser user))public virtual void Block(long userId)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеBlock(Models.IUser user))protected virtual bool CanUnBlock(long userId)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеCanUnBlock(Models.IUser user))public virtual void UnBlock(long userId)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеUnBlock(Models.IUser user))public virtual string GetPositions(Models.IUser user)в типеEleWise.ELMA.Security.Managers.UserManager(используйтеGetUserPositions)public IList<WorkflowMessageDeliveryData> GetMessageItemsToDeliver()в типеEleWise.ELMA.Workflow.Managers.WorkflowMessageItemManagerpublic IWorkflowMessageItem GetFirstUnreadMessage(IWorkflowMessageType messageType, IWorkflowInstance destInstance, Guid elementUid)в типеEleWise.ELMA.Workflow.Managers.WorkflowMessageItemManager(используйтеGetUnreadMessage)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Workflow.Audit.WorkflowInstanceTaskHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public Pair<IUser, IUser>[] GetExecutors(IWorkflowInstance instance)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеGetSwimlaneExecutors)public virtual Pair<IUser, IUser>[] GetExecutors(IWorkflowInstance instance, out bool assignedToResponsible)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеGetSwimlaneExecutors)protected Pair<IUser, IUser>[] GetExecutors(NativeActivityContext context)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеGetSwimlaneExecutors)protected Pair<IUser, IUser>[] GetExecutors(NativeActivityContext context, out bool assignedToResponsible)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеGetSwimlaneExecutors)protected void AddUserToList(List<Pair<IUser, IUser>> users, IUser user, SwimlaneElement swimlane = null)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеAddSwimlaneUserToList)protected void AddUserToList(List<Pair<IUser, IUser>> users, IUser user)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеAddSwimlaneUserToList)Pair<IUser, IUser>[] IActivityWithExceptionFlowsImpl.GetExecutors(NativeActivityContext context, out bool assignedToResponsible)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.BPMNActivity<TElement>(используйтеGetSwimlaneExecutors)Pair<IUser, IUser>[] GetExecutors(IWorkflowInstance instance)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.IBPMNActivity(используйтеGetSwimlaneExecutors)Pair<IUser, IUser>[] GetExecutors(IWorkflowInstance instance, out bool assignedToResponsible)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.IBPMNActivity(используйтеGetSwimlaneExecutors)protected string Generate(string template, object dataSource, TemplateRenderMode renderMode = TemplateRenderMode.Default)в типеEleWise.ELMA.Workflow.BPMN.Diagrams.Activities.Tasks.NotificationBaseActivity(используйтеGenerate(string template, object dataSource, int offset, TemplateRenderMode renderMode = TemplateRenderMode.Default))public static void Execute<TActivity, TParams>в типеEleWise.ELMA.Workflow.Diagrams.Activities.Helpers.ActivityExceptionFlowHelper(используйтеIElementWithExceptionFlows,ISupportQueueExecutionTimeoutиIActivityWithExceptionFlowsImpl)Pair<IUser, IUser>[] GetExecutors(NativeActivityContext context, out bool assignedToResponsible)в типеEleWise.ELMA.Workflow.Diagrams.Activities.IActivityWithExceptionFlowsImpl(используйтеGetSwimlaneExecutors)public void CheckNewPublishedProcesses()в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManagerpublic void CheckNewPublishedProcesses(bool throwOnErrors)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManagerpublic Type GetFullInstanceContextType(IWorkflowProcess process)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceContextType(long headerId, bool throwOnMissing))public virtual Type GetFullInstanceContextType(long headerId, bool throwOnMissing)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceContextType(long headerId, bool throwOnMissing))ublic virtual Type GetFullInstanceContextType(IProcessHeader header, bool throwOnMissing)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceContextType(long headerId, bool throwOnMissing))public virtual Dictionary<long, Type> GetFullInstanceContextTypes()в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceContextTypes())public virtual Type GetFullInstanceMetricValuesType(IWorkflowProcess process)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceMetricValuesType(IProcessHeader header))public virtual Type GetFullInstanceMetricValuesType(IProcessHeader header)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullInstanceMetricValuesType(IProcessHeader header))public virtual Type GetFullProcessMetricValuesType(IWorkflowProcess process)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullProcessMetricValuesType(IProcessHeader header))public virtual Type GetFullProcessMetricValuesType(IProcessHeader header)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.GetFullProcessMetricValuesType(IProcessHeader header))protected virtual void CheckNewPublishedProcessesInternal(bool throwOnErrors)в типеEleWise.ELMA.Workflow.Managers.WorkflowProcessManager(используйтеIWorkflowMetadataLoaderService.RegisterWorkflowProcessesOnStart(bool throwOnErrors))public long[] FindIds(int maxCount)в типеEleWise.ELMA.Workflow.Managers.WorkflowQueueItemManagerpublic Dictionary<long, long> FindIds(int maxCount, long[] ignoredInstanceIds)в типеEleWise.ELMA.Workflow.Managers.WorkflowQueueItemManagerpublic static string ExecuteAsync(this IWorkflowTaskBase task, Guid connectorUid)в типеEleWise.ELMA.Workflow.Models.WorkflowTaskBaseExtensionspublic static ExecuteStatus ExecuteAsyncStatus(string executionToken)в типеEleWise.ELMA.Workflow.Models.WorkflowTaskBaseExtensionsvoid RegisterWorkflowProcessesOnStart(bool throwOnErrors)в типеEleWise.ELMA.Workflow.Services.IWorkflowMetadataLoaderServicevoid ProcessItemAsync(IWorkflowQueueItem item, TimeSpan? timeout)в типеEleWise.ELMA.Workflow.Services.IWorkflowQueueService(используйтеProcessItemAsync(IWorkflowQueueItem item)илиProcessItemAsync(long itemId))void ProcessItemAsync(long itemId, TimeSpan? timeout)в типеEleWise.ELMA.Workflow.Services.IWorkflowQueueService(используйтеProcessItemAsync(IWorkflowQueueItem item)илиProcessItemAsync(long itemId))void ExecuteAsync(Func<IWorkflowExecuteData> dataFunc, Action<IWorkflowExecuteData> callBack, Action<IWorkflowExecuteData, Exception> errorCallBack, Action<IWorkflowExecuteData> finallyCallBack = null)в типеEleWise.ELMA.Workflow.Services.IWorkflowRuntimeServicepublic void RegisterWorkflowProcessesOnStart(bool throwOnErrors)в типеEleWise.ELMA.Workflow.Services.WorkflowMetadataLoaderServicepublic virtual bool TryInsertQueuedItem(WorkflowQueueItemExecutionInfo itemInfo)в типеEleWise.ELMA.Workflow.Services.WorkflowQueueDbServicepublic virtual bool TryDeleteQueuedItem(Guid executionUid)в типеEleWise.ELMA.Workflow.Services.WorkflowQueueDbServicepublic virtual long[] GetOtherServerInstanceIds()в типеEleWise.ELMA.Workflow.Services.WorkflowQueueDbServicepublic void ProcessItemAsync(IWorkflowQueueItem item, TimeSpan? timeout)в типеEleWise.ELMA.Workflow.Services.WorkflowQueueService(используйтеProcessItemAsync(IWorkflowQueueItem item)илиProcessItemAsync(long itemId))public void ProcessItemAsync(long itemId, TimeSpan? timeout)в типеEleWise.ELMA.Workflow.Services.WorkflowQueueService(используйтеProcessItemAsync(IWorkflowQueueItem item)илиProcessItemAsync(long itemId))public void ExecuteAsync(Func<IWorkflowExecuteData> dataFunc, Action<IWorkflowExecuteData> callBack, Action<IWorkflowExecuteData, Exception> errorCallBack, Action<IWorkflowExecuteData> finallyCallBack = null)в типеEleWise.ELMA.Workflow.Services.WorkflowRuntimeServicepublic IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Workflow.WorkflowInstanceSubprocessHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)DataTable ExecuteHqlQuery(string queryString, IEnumerable<Tuple<string, object>> queryParams, int? page, int? pageSize, object parameters)в типеEleWise.ELMA.Reports.DTO.Managers.IReportDataSourceQueryDTOManagerpublic virtual DataTable ExecuteHqlQuery(string queryString, IEnumerable<Tuple<string, object>> queryParams, int? page, int? pageSize, object parameters)в типеEleWise.ELMA.Reports.DTO.Managers.ReportDataSourceQueryDTOManagerbool HasUserFields(IDocumentFilter filter)в типеEleWise.ELMA.Documents.Web.FullTextSearch.Extensions.INeedFullTextSearchCheck(используйтеHasUserFields(IDocumentFilter filter, CheckFullTextSearchModel checkResult))public virtual bool HasUserFields(IDocumentFilter filter)в типеEleWise.ELMA.Documents.Web.FullTextSearch.Extensions.NeedFullTextSearchCheck(используйтеHasUserFields(IDocumentFilter filter, CheckFullTextSearchModel checkResult))public bool Index(Type cardType, List<object> objects)в типеEleWise.ELMA.FullTextSearch.Elastic.Components.FullTextSearchElasticProviderpublic bool Index(Type cardType, List<object> objects)в типеEleWise.ELMA.FullTextSearch.Lucene.Components.FullTextSearchLuceneProviderpublic void SetPageSize()в типеEleWise.ELMA.FullTextSearch.Components.ModuleFullTextSearchExtensionprotected virtual void ProcessingDynamicProperties(IEntity entity, IFullTextSearchObject objF)в типеEleWise.ELMA.FullTextSearch.Components.ModuleFullTextSearchExtensionpublic virtual void FillObject(Type cardType, IFullTextSearchObject obj, IEntity entity)в типеEleWise.ELMA.FullTextSearch.Components.ModuleFullTextSearchExtensionpublic virtual List<KeyValuePair<string, object>> CreateFromObject(Type cardType, IFullTextSearchObject obj)в типеEleWise.ELMA.FullTextSearch.Components.ModuleFullTextSearchExtensionbool Index(Type type, List<object> objects)в типеEleWise.ELMA.FullTextSearch.ExtensionPoints.IFullTextSearchProvidervoid FillObject(Type cardType, IFullTextSearchObject obj, IEntity entity)в типеEleWise.ELMA.FullTextSearch.ExtensionPoints.IModuleFullTextSearchExtensionList<KeyValuePair<string, object>> CreateFromObject(Type cardType, IFullTextSearchObject obj)в типеEleWise.ELMA.FullTextSearch.ExtensionPoints.IModuleFullTextSearchExtensionvoid SetPageSize()в типеEleWise.ELMA.FullTextSearch.ExtensionPoints.IModuleFullTextSearchExtensionpublic void AddCall(AbstractCallInfo call)в типеEleWise.ELMA.Diagnostics.CallContextInfopublic void RemoveCall(AbstractCallInfo call)в типеEleWise.ELMA.Diagnostics.CallContextInfopublic void BackgroundTaskStart(BackgroundTaskInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеvoid BackgroundTaskStart(string name, Type ownerType, string description))public void BackgroundTaskEnd(BackgroundTaskInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеvoid BackgroundTaskEnd())public void BackgroundTaskError(BackgroundTaskInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеvoid BackgroundTaskError(Exception ex))public void SqlCommandPrepareError(SqlQueryInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void SqlCommandExecuteStart(SqlQueryInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void SqlCommandExecuteEnd(SqlQueryInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void SqlCommandExecuteError(SqlQueryInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void SqlCommandReadEnd(SqlQueryInfo info, TimeSpan totalTime)в типеEleWise.ELMA.Diagnostics.DiagnosticsManagerpublic void IndexCallStart(IndexCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void IndexCallEnd(IndexCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void IndexCallCancel(IndexCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void IndexCallError(IndexCallInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void IndexQueryStart(IndexQueryInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void IndexQueryEnd(IndexQueryInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void IndexQueryError(IndexQueryInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void MethodCallStart(MethodCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void MethodCallEnd(MethodCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void MethodCallError(MethodCallInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ActionCallStart(ControllerActionCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void ActionCallEnd(ControllerActionCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ActionCallError(ControllerActionCallInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ExecuteResultStart(ExecuteResultCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void ExecuteResultEnd(ExecuteResultCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ExecuteResultError(ExecuteResultCallInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void RenderViewStart(RenderViewInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void RenderViewEnd(RenderViewInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void RenderViewError(RenderViewInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void FindViewStart(FindViewInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void FindViewEnd(FindViewInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ScriptCallStart(ScriptCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void ScriptCallEnd(ScriptCallInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void ScriptCallError(ScriptCallInfo info, Exception ex)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void CacheReadStart(CacheReadInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void CacheReadEnd(CacheReadInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void CacheWriteStart(CacheWriteInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void CacheWriteEnd(CacheWriteInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)public void CacheLockStart(CacheLockInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStartCall)public void CacheLockEnd(CacheLockInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеStopCall)ExportExcel(MainStatistics stat, ExcelReportBuilder builder)в типеEleWise.ELMA.Diagnostics.Reports.ServerInformationPagepublic string GetCategory(Type declaringType)в типеEleWise.ELMA.Web.Content.ControllerContentActionProvider(используйтеIContentActionUtilsService)public Func<RequestContext, bool> PermissionDelegate(MethodInfo methodInfo)в типеEleWise.ELMA.Web.Content.ControllerContentActionProvider(используйтеIContentActionUtilsService)public MenuItemBuilder Image(string image)в типеEleWise.ELMA.Web.Content.Menu.MenuItemBuilder(используйтеImage16,Image24,Image32)public static void HasPermissionOnFile(BinaryFile file)в типеEleWise.ELMA.Web.Mvc.Controllers.BinaryFilesController(используйтеFileUpDownHelper.HasPermissionOnFile(BinaryFile file))public static void HasPermissionOnFile(BinaryFile file, out string errorMessage)в типеEleWise.ELMA.Web.Mvc.Controllers.BinaryFilesController(используйтеFileUpDownHelper.HasPermissionOnFile(BinaryFile file, out string errorMessage))public BinaryFile PrepareBinaryFile(BinaryFile file)в типеEleWise.ELMA.Web.Mvc.Controllers.BinaryFilesController(используйтеFileUpDownHelper.PrepareBinaryFile(BinaryFile file))public static void GetRanges(string rangesHeader, long fileLength, out long[] RangesStartIndexes, out long[] RangesEndIndexes)в типеEleWise.ELMA.Web.Mvc.Controllers.BinaryFilesController(используйтеFileUpDownHelper.GetRanges(string rangesHeader, long fileLength, out long[] RangesStartIndexes, out long[] RangesEndIndexes))public static bool GetCachedBinaryFile(string id, out string fileName, out string filePath, out string contentType)в типеEleWise.ELMA.Web.Service.FileUpDownHelperpublic bool UpdatePeriodEvent(ICalendarEvent template, DateTime? startDay = null, DateTime? endDay = null)в типеEleWise.ELMA.Calendar.Managers.CalendarEventManager(используйтеIPeriodicalEntityManager)public void RemoveForwardCreatedEvents(ICalendarEventPeriodical template)в типеEleWise.ELMA.Calendar.Managers.CalendarEventPeriodicalManagerpublic void SetHoliday(DateTime date)в типеEleWise.ELMA.Calendar.ProductionCalendarServicepublic void SetWorkDayTime(TimeSpan workStart, TimeSpan workEnd, TimeSpan dinnerStart, TimeSpan dinnerEnd)в типеEleWise.ELMA.Calendar.ProductionCalendarServicepublic void SetWorkDayTime(TimeSpan workStart, TimeSpan workEnd)в типеEleWise.ELMA.Calendar.ProductionCalendarServicepublic void SetWorkDayTime(TimeSpan workStart)в типеEleWise.ELMA.Calendar.ProductionCalendarServicepublic TimeSpan GetDinnerStart(DateTime runtimeDateTime)в типеEleWise.ELMA.Calendar.ProductionSchedulepublic TimeSpan GetDinnerEnd(DateTime runtimeDateTime)в типеEleWise.ELMA.Calendar.ProductionSchedulepublic void ResortExceptionDays()в типеEleWise.ELMA.Calendar.ProductionSchedulepublic static void ResortExceptionDays(ProductionSchedule productionSchedule)в типеEleWise.ELMA.Calendar.ProductionSchedulepublic static DateTime StartDateOfWeek(DateTime runtimeDateTime)в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеIProductionSchedule)public static int DayOfWeekNumber(DateTime runtimeDateTime)в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеIProductionSchedule)public static string MonthName(DateTime runtimeDateTime)в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеIProductionSchedule)public static ProductionSchedule Load()в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеProductionSchedule)public static ProductionSchedule ReadXmlProductionSchedule(XmlDocument docXml, bool retNull = false)в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеProductionSchedule)public void Save()в типеEleWise.ELMA.Calendar.ProductionSchedule(используйтеIResourceCalendar)public ActionResult DeleteMessages(string ids)в типеEleWise.ELMA.Messages.Web.Controllers.BaseMessageControllerpublic ActionResult DeleteAll([Bind(Prefix = "BaseMessageFilter")] IBaseMessageFilter filter)в типеEleWise.ELMA.Messages.Web.Controllers.BaseMessageControllerpublic void Create()в типеEleWise.ELMA.Messages.Db.MsSql.Components.Feed.FeedMsSqlIndexespublic IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Messages.Audit.DiscussionHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory", true))void Create()в типеEleWise.ELMA.Messages.ExtensionPoints.IFeedIndexesExtensionpublic void SetReaded(long id)в типеEleWise.ELMA.Messages.Managers.BaseMessageManagerpublic void SetReaded(long id, ELMA.Security.Models.IUser user)в типеEleWise.ELMA.Messages.Managers.BaseMessageManagerpublic void SetUnreaded(long id)в типеEleWise.ELMA.Messages.Managers.BaseMessageManagerpublic static IRecipientMessageStatus InitStatus(IBaseMessage message, ELMA.Security.Models.IUser user)в типеEleWise.ELMA.Messages.Managers.BaseMessageManagerpublic virtual void DeleteMessages(IBaseMessageFilter filter)в типеEleWise.ELMA.Messages.Managers.BaseMessageManagerpublic IEnumerable<long> FindIdsToSend(int maxCount)в типеEleWise.ELMA.Messages.Managers.MessageQueueChannelItemManagerpublic IEnumerable<long> FindIdsToSend(int maxCount, IEnumerable<IMessageChannel> channels)в типеEleWise.ELMA.Messages.Managers.MessageQueueChannelItemManagerpublic IEnumerable<Tuple<long, Guid>> FindIdsAndChannelToSend(int maxCount, IEnumerable<IMessageChannel> channels)в типеEleWise.ELMA.Messages.Managers.MessageQueueChannelItemManagerpublic bool LockForSend(IMessageQueueChannelItem item)в типеEleWise.ELMA.Messages.Managers.MessageQueueChannelItemManagerpublic virtual void TryDeleteItem(IMessageQueueItem item)в типеEleWise.ELMA.Messages.Managers.MessageQueueItemManagerpublic bool LockForSend(IMessageQueueItem item)в типеEleWise.ELMA.Messages.Managers.MessageQueueItemManagerpublic static MvcHtmlString RenderMenu(this HtmlHelper html, string menuUId, string template)в типеEleWise.ELMA.BPM.Web.Content.Menu.MenuExtensionspublic static MenuModel GetMenuModel(this HtmlHelper html, string menuUId)в типеEleWise.ELMA.BPM.Web.Content.Menu.MenuExtensionspublic static MenuModel GetMenuModel(this HtmlHelper html, string menuUId, bool throwIfNotFound)в типеEleWise.ELMA.BPM.Web.Content.Menu.MenuExtensionspublic static MenuModel GetMenuModel(this HtmlHelper html, string menuUId, bool throwIfNotFound, bool skipChildNonActiveItems)в типеEleWise.ELMA.BPM.Web.Content.Menu.MenuExtensionspublic virtual void CheckItemsPetrmissions()в типеEleWise.ELMA.BPM.Web.Content.Menu.MenuInitializerpublic IList<IMenuItem> LoadItemsReadOnly(string menuCode, bool allowDisabled)в типеEleWise.ELMA.Content.Managers.MenuItemManagerpublic virtual IMenu GetByCode(string uid)в типеEleWise.ELMA.Content.Managers.MenuManagerpublic static bool IsHtml5FileUploadCapable([NotNull] this HtmlHelper html)в типеEleWise.ELMA.BPM.Web.Common.Extensions.HtmlExtensions(используйтеelma.IsHtml5FileUploadCapable())public static MvcHtmlString InfoPanel(HtmlHelper html, EleWise.ELMA.BPM.Web.Common.Models.ClientInfoPanel model)в типеEleWise.ELMA.BPM.Web.Common.Extensions.HtmlExtensions(используйтеEleWise.ELMA.Web.Mvc.Html.UIExtensions.InfoPanel)public static MvcHtmlString InfoPanel(HtmlHelper html, string panelId, string text)в типеEleWise.ELMA.BPM.Web.Common.Extensions.HtmlExtensions(используйтеEleWise.ELMA.Web.Mvc.Html.UIExtensions.InfoPanel)public static MvcHtmlString InfoPanel(HtmlHelper html, string text)в типеEleWise.ELMA.BPM.Web.Common.Extensions.HtmlExtensions(используйтеEleWise.ELMA.Web.Mvc.Html.UIExtensions.InfoPanel)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.CRM.Audit.ContractorHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Common.Audit.AttachmentHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Common.Audit.CommentHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public static List<FilterMetadataProperty> LoadMetadataProperties(this Type type, bool inherit, int levels = 1, string prefix = "", Dictionary<Guid, Guid> universalFilterUnPackFromDictionary = null, Dictionary<Guid, Type> filterTypes = null)в типеEleWise.ELMA.Common.Extensions.SavedFilterHelperpublic virtual IBudgetExpenseItemRef CreateRef(string name)в типеEleWise.ELMA.Common.Managers.BudgetExpenseItemRefManager(используйтеCreate(string name))public virtual IBudgetExpenseItemRef CreateRef(string name, string description)в типеEleWise.ELMA.Common.Managers.BudgetExpenseItemRefManager(используйтеCreate(string name, string description))public virtual IBudgetIncomeItemRef CreateRef(string name)в типеEleWise.ELMA.Common.Managers.BudgetIncomeItemRefManager(используйтеCreate(string name))public virtual IBudgetIncomeItemRef CreateRef(string name, string description)в типеEleWise.ELMA.Common.Managers.BudgetIncomeItemRefManager(используйтеCreate(string name, string description))public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.DocumentTasksHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.RegistrationCardHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.ResolutionHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.DocumentAttachmentsHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.DocumentLinksHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Audit.DocumentVersionsHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Documents.Components.DocumentBaseTasksHistoryCollector(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public static IEnumerable<EntityActionEventArgs> CollectHistoryForTask(IMetadata taskMetadata, ITaskBase task, Guid actionObject)в типеEleWise.ELMA.Documents.Components.DocumentBaseTasksHistoryCollector(используйтеDocumentBaseTasksHistoryCollector.CollectHistoryForTaskRelated)public IEnumerable<EntityActionEventArgs> CollectHistory(long id, Guid actionObject)в типеEleWise.ELMA.Tasks.Audit.QuestionHistoryCollectorBase(используйтеIEntityActionHistoryCollectorRelated.CollectHistory)public static void ResolveFetchColumns(ICriteria criteria, IEnumerable<string> properties, FetchMode fetchMode, bool usingAlias = false)в типеEleWise.ELMA.Model.Common.FetchOptionsBuilder(используйтеResolveFetchColumns(ICriteria, IEnumerable<string>, SelectMode, bool))public virtual FormView GetView(Element element)в типеEleWise.ELMA.Documents.BPMN.Components.BaseDocumentFromElementResolverpublic void Assign(IDocumentVersionExt version, string comment = null)в типеEleWise.ELMA.Documents.Managers.DocumentVersionExtManager(используйтеSign)public virtual bool HasPermissionByDocumentType(Guid typeUid, Permission permission, IUser user = null)в типеEleWise.ELMA.Documents.Managers.DocumentMetadataProfileManager(используйтеSecurityService)public string GetSuccessfulSaveNotification(IEnumerable<TRelationshipEntity> entities)в типеEleWise.ELMA.CRM.Web.Controllers.RelationshipControllerAbstract<TRelationshipEntity, TRelationshipEntityModel>(используйтеGetSuccessfulSaveMvcNotification)FormViewItem FormViewItem(ViewType viewType)в типеEleWise.ELMA.CRM.Web.Extensions.IContractorBaseModelpublic virtual FormViewItem FormViewItem(ViewType viewType)в типеEleWise.ELMA.CRM.Web.Models.ContractorBaseModel<T>(используйтеView)public static string EntityAction<AttributeType>(this UrlHelper url, Guid entityTypeUid, object routeValues)в типеEleWise.ELMA.CRM.Web.UIExtensions(используйтеEleWise.ELMA.Web.Mvc.Extensions.UrlExtensions.Entity)public static string EntityAction<AttributeType>(this UrlHelper url, Guid entityTypeUid, RouteValueDictionary routeValues)в типеEleWise.ELMA.CRM.Web.UIExtensions(используйтеEleWise.ELMA.Web.Mvc.Extensions.UrlExtensions.Entity)public virtual Guid SaveNewItems(string name, long type, Guid? parentUid)в типеEleWise.ELMA.CRM.RU.Managers.FiasBaseManager(используйтеAddrManager.Save)public static TabLayoutViewItemBuilder<TM> RelationshipsTab<TM>(TabLayoutViewItemBuilder<TM> b, Action<ContractorRelationshipsTabViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtension(используйтеTab)public static TB RelationshipsGrid<TM, T, TB>(RootViewItemBuilder<TM, T, TB> b, Action<ContractorRelationshipsGridViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtensionpublic static TabLayoutViewItemBuilder<TM> TasksTab<TM>(TabLayoutViewItemBuilder<TM> b, Action<ContractorTasksTabViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtension(используйтеTab)public static TB TasksGrid<TM, T, TB>(RootViewItemBuilder<TM, T, TB> b, Action<ContractorTasksGridViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtensionpublic static TabLayoutViewItemBuilder<TM> AttachmentsTab<TM>(TabLayoutViewItemBuilder<TM> b, Action<ContractorAttachmentsTabViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtension(используйтеTab)public static TB AttachmentsGrid<TM, T, TB>(RootViewItemBuilder<TM, T, TB> b, Action<ContractorAttachmentsGridViewItemBuilder<TM>> obsoleteBuilder)в типеEleWise.ELMA.CRM.Extensions.ViewItemBuilderExtensionpublic object[] GetComponents()в типеEleWise.ELMA.ComponentModel.ComponentManagerobject[] GetComponents()в типеEleWise.ELMA.ComponentModel.IComponentManagerpublic static HashSet<T> ToHashSet<T>(IEnumerable<T> source, IEqualityComparer<T> comparer = null)в типеEleWise.ELMA.Extensions.CollectionExtensions(используйтеEnumerable.ToHashSet)public virtual void CreateFilePreviewExecute(ICreateFilePreviewQueueItem item)в типеEleWise.ELMA.Files.Previews.CreateFilePreviewQueueItemManagerpublic string GenerateCode()в типеEleWise.ELMA.Model.CodeGeneration.AutoClassGenerator(используйтеnew AutoClassGenerator()иGenerateCode(Type interfaceType, params Type[] extensionTypes))public virtual MetadataPublishResult Publish(string comment, string tag, bool ignoreScriptsErrors, params long[] headerIds)в типеEleWise.ELMA.Model.Metadata.Managers.MetadataItemManager(используйтеPublish(string comment, string tag, params long[] headerIds))public static void PurgeStaleMetadataFromCache(IEnumerable<IRootMetadata> staleMetadata)в типеEleWise.ELMA.Model.Metadata.MetadataLoaderpublic static void ClearMetadataCache()в типеEleWise.ELMA.Model.Metadata.MetadataLoaderprotected static string GetNhQuoted(string name)в типеEleWise.ELMA.Model.Metadata.Types.SimpleTypeDescriptor<T>public TB HideEmpty(bool hideEmpty)в типеEleWise.ELMA.Model.Views.Builders.RootViewItemBuilder<TM, T, TB>(используйтеHideEmpty(HideEmptyEnum))long GetConfigurationAssemblyMaxId()в типеEleWise.ELMA.Runtime.Managers.IServerInfoManagerpublic virtual long GetConfigurationAssemblyMaxId()в типеEleWise.ELMA.Runtime.Managers.ServerInfoManagerprotected void RecalcCrc(BinaryFile binaryFile)в типеEleWise.ELMA.Runtime.Providers.Impl.FileSystemFileStoreProviderpublic void Step(DateTime now)в типеEleWise.ELMA.Scheduling.Impl.StepSchedulerpublic void StepOnce(DateTime now)в типеEleWise.ELMA.Scheduling.Impl.StepSchedulerprotected virtual ICollection<Tuple<ISchedulerJob, PendingJob>> GetOnceSchedulerJobs(List<PendingJob> pendingJobs)в типеEleWise.ELMA.Scheduling.Impl.StepSchedulervoid Step(DateTime now)в типеEleWise.ELMA.Scheduling.IStepSchedulervoid StepOnce(DateTime now)в типеEleWise.ELMA.Scheduling.IStepSchedulerpublic static void Clear()в типеEleWise.ELMA.Services.ContextVars(используйтеIContextBoundVariableService.ClearForиIContextBoundVariableService.ClearRegion)void Clear()в типеEleWise.ELMA.Services.IContextBoundVariableService(используйтеIContextBoundVariableService.ClearForиIContextBoundVariableService.ClearRegion)public static void Clear()в типеEleWise.ELMA.Services.Impl.FakeVariableServiceBase(используйтеIContextBoundVariableService.ClearForиIContextBoundVariableService.ClearRegion)public static void ReplacementUserProperties<T>(this DynamicColumnsBuilder<T> columnsBuilder, IReplacementTask replacementTask)в типеEleWise.ELMA.BPM.Web.Tasks.Extensions.DynamicGridExtension(используйтеReplacementProperties)public static bool AllowFastSearch()в типеEleWise.ELMA.Tasks.Components.WorkLogSearchProviderBasepublic static void SetAssignment(this IReplacementTask replacementTask, ReferenceOnEntity entity, Guid propertyUid, long assignmentUserId)в типеEleWise.ELMA.Tasks.Extensions.ReplacementTaskExtensions(используйтеSetAssignmentValue)public static string IndicatorStateIcon(IIndicator indicator, IndicatorPeriodValue indicatorPeriodValue)в типеEleWise.ELMA.KPI.Web.Extensions.ViewExtensions(используйтеIndicatorStateIcon(this HtmlHelper html, IIndicator indicator, IndicatorPeriodValue indicatorPeriodValue))public static string IndicatorTrendImage(Trend trend)в типеEleWise.ELMA.KPI.Web.Extensions.ViewExtensions(используйтеIndicatorTrendImage(this HtmlHelper html, Trend trend, int size = 16))
Удалены свойства, поля и константы
public string ActionNameв типеEleWise.ELMA.KPI.API.Models.SMARTTaskWCFpublic BindingList<object> ActionsReferencesв типеEleWise.ELMA.KPI.DTO.Models.TargetDTOpublic Reference<ProspectDTO> ProspectReferenceв типеEleWise.ELMA.KPI.DTO.Models.TargetDTOpublic ProspectDTO Prospectв типеEleWise.ELMA.KPI.DTO.Models.TargetDTOpublic Collection<DocumentDTO> Documentsв типеEleWise.ELMA.KPI.DTO.Models.TargetDTOString WebImageName(ScaleStatus scaleStatus)в типеEleWise.ELMA.KPI.Interfaces.IIndicatorStatusViewpublic bool GroupTargetsOnProspectsв типеEleWise.ELMA.KPI.KPIPeriodsSettingspublic bool EnableStrategyMapsв типеEleWise.ELMA.KPI.KPIPeriodsSettingspublic BindingList<ProcessDTO> Processesв типеEleWise.ELMA.KPI.Models.KpiModelpublic BindingList<ProspectDTO> Prospectsв типеEleWise.ELMA.KPI.Models.KpiModelpublic BindingList<ObjectManagementDTO> ObjectsManagementв типеEleWise.ELMA.KPI.Models.KpiModelpublic BindingList<StrategyMapDTO> StrategyMapsв типеEleWise.ELMA.KPI.Models.KpiModelpublic const string ControlPanelAccessPermissionIdв типеEleWise.ELMA.KPI.Security.PermissionsProviderpublic const string NavigatorAccessPermissionIdв типеEleWise.ELMA.KPI.Security.PermissionsProviderpublic static readonly Permission ControlPanelAccessPermissionв типеEleWise.ELMA.KPI.Security.PermissionsProviderpublic static void RenderUsers(this HtmlHelper html, IPagination<IUser> pagination)в типеEleWise.ELMA.KPI.Web.Extensions.TableExtensionspublic static void RenderUserPerformances(this HtmlHelper html, IPagination<IPerformanceMatrix> pagination)в типеEleWise.ELMA.KPI.Web.Extensions.TableExtensionspublic IPagination<IUser> PaginationUsersв типеEleWise.ELMA.KPI.Web.Models.PerformanceMyDepartmentModelpublic bool ShowUsersWithoutMatrixв типеEleWise.ELMA.KPI.Web.Models.PerformanceMyDepartmentModelpublic string ModeViewв типеEleWise.ELMA.KPI.Web.Models.Settings.MyDepartmentSettingspublic bool ShowUsersWithoutMatrixв типеEleWise.ELMA.KPI.Web.Models.Settings.MyDepartmentSettingspublic Guid? ScriptModuleUidв типеEleWise.ELMA.Deploy.Export.Metadata.MetadataExportObjectpublic Dictionary<IGroupedMetadata, Guid?> SubUserMetadataв типеEleWise.ELMA.Deploy.PacketMetadatapublic IRuntimeApplication RuntimeApplicationв типеEleWise.ELMA.Files.Previews.FilePreviewServicepublic ICryptoContextAuthService CryptoContextAuthServiceв типеEleWise.ELMA.Files.Previews.FilePreviewServicepublic IEnumerable<ICreateFilePreviewItemIndex> FilePreviewItemIndexElemetsв типеEleWise.ELMA.Files.Previews.FilePreviewServicepublic bool HarmonizatorStartDateDamperв типеEleWise.ELMA.Projects.Web.Models.Budget.ProjectBudgetApprovalTaskModelpublic bool HarmonizatorEndDateDamperв типеEleWise.ELMA.Projects.Web.Models.Budget.ProjectBudgetApprovalTaskModelpublic bool HarmonizatorStartDateDamperв типеEleWise.ELMA.Projects.Web.Models.ProjectPlanApprovalTaskModelpublic bool HarmonizatorEndDateDamperв типеEleWise.ELMA.Projects.Web.Models.ProjectPlanApprovalTaskModelpublic bool HarmonizatorStartDateDamperв типеEleWise.ELMA.Projects.Web.Models.Resources.SendToApprovalModelpublic bool HarmonizatorEndDateDamperв типеEleWise.ELMA.Projects.Web.Models.Resources.SendToApprovalModelpublic CustomFluentMappingsContainer FluentMappingsв типеEleWise.ELMA.Runtime.Managers.NHManagerRegisterParamsstring PanelTextв типеEleWise.ELMA.BPM.Web.Security.ExtensionPoints.IBlockUserActionExtensionpublic string PanelTextв типеEleWise.ELMA.BPM.Web.Tasks.Components.ReplacementTaskBlockUserActionExtensionpublic Guid DefaultAuthCryptoProviderUidв типеEleWise.ELMA.Security.Components.SecuritySettingspublic Guid AuditUidв типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic Dictionary<Models.IUser, byte> Usersв типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic Dictionary<IUserGroup, GroupUpdate> Groupsв типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic Dictionary<IOrganizationItem, OrganizationItemUpdate> OrganizationItemsв типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic virtual Permission Permissionв типеEleWise.ELMA.Security.ExpressionPermissionBasepublic bool ShowPersonalGroupв типеEleWise.ELMA.Security.Types.Settings.EntityUserSettingspublic bool RunByEmailв типеEleWise.ELMA.Workflow.DTO.Models.ProcessHeaderDTOpublic bool RunByFileв типеEleWise.ELMA.Workflow.DTO.Models.ProcessHeaderDTObool Enabledв типеEleWise.ELMA.Workflow.Services.IWorkflowQueueServicepublic bool Enabledв типеEleWise.ELMA.Workflow.Services.WorkflowQueueServicepublic MetadataAccessLevel AccessLevelв типеEleWise.ELMA.Reports.DTO.Models.ReportDTOpublic string Languageв типеEleWise.ELMA.Reports.DTO.Models.ReportDataSourceDTOpublic int? SettingsPageSizeв типеEleWise.ELMA.FullTextSearch.Components.ModuleFullTextSearchExtensionpublic bool Successв типеEleWise.ELMA.Diagnostics.CacheLockInfopublic bool Errorв типеEleWise.ELMA.Diagnostics.CacheQueryInfopublic SqlQueriesTotalStatistics SqlQueriesв типеEleWise.ELMA.Diagnostics.CallContextInfopublic IndexQueriesTotalStatistics IndexQueriesв типеEleWise.ELMA.Diagnostics.CallContextInfopublic IndexCallsTotalStatistics IndexCallsв типеEleWise.ELMA.Diagnostics.CallContextInfopublic CacheCallsTotalStatistics CacheCallsв типеEleWise.ELMA.Diagnostics.CallContextInfopublic MainStatistics Statisticsв типеEleWise.ELMA.Diagnostics.DiagnosticsManager(используйтеMetrics)public BackgroundTaskInfo Infoв типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskEndEventpublic BackgroundTaskInfo Infoв типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskErrorEventpublic BackgroundTaskInfo Infoв типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskStartEventpublic CommandService CommandServiceв типеEleWise.ELMA.CRM.Telephony.Managers.TelephonyManagerpublic string Imageв типеEleWise.ELMA.Web.Actions.ContentDispatchAction(используйтеImage16,Image24,Image32)public string Imageв типеEleWise.ELMA.Web.Content.ContentAction(используйтеImage16,Image24,Image32)public string Imageв типеEleWise.ELMA.Web.Content.ContentItemAttribute(используйтеImage16,Image24,Image32)public string Imageв типеEleWise.ELMA.Web.Content.ContentCategory(используйтеImage16,Image24,Image32)public string Imageв типеEleWise.ELMA.Web.Content.IContentItem(используйтеImage16,Image24,Image32)public string Imageв типеEleWise.ELMA.Web.Content.Menu.MenuItem(используйтеImage16,Image24,Image32)public static IEnumerable<DropDownItem> LogLevelsв типеEleWise.ELMA.Web.Mvc.Services.DiagnosticsSettingsModuleControllerpublic Day[] Daysв типеEleWise.ELMA.Calendar.ProductionSchedulepublic SerializableList<ExceptionDay> ExceptionDaysв типеEleWise.ELMA.Calendar.ProductionSchedulepublic TimeSpan WorkStartв типеEleWise.ELMA.Calendar.ProductionSchedulepublic TimeSpan WorkEndв типеEleWise.ELMA.Calendar.ProductionSchedulepublic TimeSpan DinnerStartв типеEleWise.ELMA.Calendar.ProductionSchedulepublic TimeSpan DinnerEndв типеEleWise.ELMA.Calendar.ProductionSchedulepublic string CultureFormatDateв типеEleWise.ELMA.Calendar.ProductionSchedulepublic virtual MessageStatus Statusв типеEleWise.ELMA.Messages.Web.Models.InfoChannelMessageChildpublic virtual MessageStatus Statusв типеEleWise.ELMA.Messages.Web.Models.MessageViewInfo<T>public bool EnableSslв типеEleWise.ELMA.Messaging.Email.SmtpSettings(используйтеSSLType)public Dictionary<Guid, Type> FilterTypesв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic List<Pair<SelectListItem, Type>> Typesв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic IEnumerable<IEntityFilter> TypeFiltersв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic bool SubTypesв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic IEnumerable<IFilterPropertyReloadFormHandler> PropertyReloadHandlersв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic string CustomSettingsViewв типеEleWise.ELMA.BPM.Web.Common.Models.FilterModelpublic static readonly Permission DocumentMetadataViewв типеEleWise.ELMA.Documents.PermissionProviderpublic DateTime LastMetadataUpdateв типеEleWise.ELMA.ComponentModel.Components.AbstractMetadataEditorComponentpublic DateTime LastMetadataUpdateв типеEleWise.ELMA.Model.Managers.ModelRegistrarpublic DateTime LastMetadataUpdateв типеEleWise.ELMA.Model.Managers.ModelRegistrarImplpublic virtual bool DynamicInsertв типеEleWise.ELMA.Model.Metadata.EntityMetadatapublic virtual bool DynamicUpdateв типеEleWise.ELMA.Model.Metadata.EntityMetadatapublic DateTime LastMetadataUpdateв типеEleWise.ELMA.Model.Services.ConfigurationModelBuilderMetadataServicepublic DateTime LastMetadataUpdateв типеEleWise.ELMA.Model.Services.ExtendedMetadataServiceDateTime LastMetadataUpdateв типеEleWise.ELMA.Model.Services.IMetadataServicepublic virtual bool Collapsedв типеEleWise.ELMA.Model.Views.PanelViewItem(используйтеDefaultCollapseState)protected IUser CurrentUserв типеEleWise.ELMA.Tasks.ExtensionPoints.WorkLogItemSearchExtension(используйтеIAuthenticationService)public bool WorkLogв типеEleWise.ELMA.Tasks.TasksSettings(используйтеEleWise.ELMA.Tasks.WorkLogSettings.WorkLogEnabled)public IFormMetadataItemHeader FormMetadataItemHeaderв типеEleWise.ELMA.BPM.Web.Content.Models.PageProfileModel
Удалены конструкторы
public DiagramItem(IProjectPlanItem item, int level = 1, PlanMode mode = PlanMode.View, DateMode? datesMode = null)в типеEleWise.ELMA.Projects.Web.Models.DiagramExecutorpublic DiagramItem(IProjectPlanItem item, TaskResourcesModel resources, int level = 1, PlanMode mode = PlanMode.View, DateMode? datesMode = null)в типеEleWise.ELMA.Projects.Web.Models.DiagramExecutorpublic ImportEntityPreSaveData(Dictionary<string, string> serviceData, List<DeploySystemMessage> systemMessages)в типеEleWise.ELMA.Deploy.Import.ImportEntityPreSaveData(используйтеpublic ImportEntityPreSaveData(Dictionary<string, string> serviceData, List<DeploySystemMessage> systemMessages, List<Guid> metadataUidForImport, List<Guid> metadataUidInModules, List<Pair<Guid, Guid>> propertyUidForImport, MergeReplace mergeReplace))public SecurityCacheSetIdEventArgs(Dictionary<Models.IUser, byte> users, Dictionary<IUserGroup, GroupUpdate> groups, Dictionary<IOrganizationItem, OrganizationItemUpdate> organizationItems)в типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic SecurityCacheSetIdEventArgs(Guid auditUid)в типеEleWise.ELMA.Security.Events.SecurityCacheSetIdEventArgspublic BackgroundTaskEndEvent(CallContextInfo callContextInfo, BackgroundTaskInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskEndEventpublic BackgroundTaskErrorEvent(CallContextInfo callContextInfo, BackgroundTaskInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskErrorEventpublic BackgroundTaskStartEvent(CallContextInfo callContextInfo, BackgroundTaskInfo info)в типеEleWise.ELMA.Diagnostics.DiagnosticsManager.Events.BackgroundTaskStartEventpublic DayWCF(ProductionSchedule.Day d)в типеEleWise.ELMA.Calendar.API.Models.DayWCFpublic DayWCF(ProductionSchedule.ExceptionDay d)в типеEleWise.ELMA.Calendar.API.Models.DayWCFpublic ProductionScheduleWCF(ProductionSchedule ps)в типеEleWise.ELMA.Calendar.API.Models.ProductionScheduleWCFpublic SmtpSettings(string host, int port, string userName, string password)в типеEleWise.ELMA.Messaging.Email.SmtpSettingspublic SmtpSettings(string host, int port, bool enableSsl, string userName, string password)в типеEleWise.ELMA.Messaging.Email.SmtpSettingspublic AutoClassGenerator(Type interfaceType, params Type[] extensionTypes)в типеEleWise.ELMA.Model.CodeGeneration.AutoClassGenerator(используйтеnew AutoClassGenerator()иGenerateCode(Type interfaceType, params Type[] extensionTypes))public NestedScopeComponents(string scope)в типеEleWise.ELMA.Runtime.Context.NestedScopeComponents<T>(используйтеNestedScopeComponents(ServiceScope))