Функциональность приложения

Логика работы приложения определяется проектом. Проект состоит из элементов разного вида. Каждый такой вид позволяет вам описать в приложении определенную совокупность сущностей или процессов предметной области, которые имеют схожие характеристики поведения и сходную роль. В этом разделе описываются те предметные области, для которых имеет подходящие виды элементов проекта.

Совет: Полный список видов элементов проекта в алфавитном порядке вы можете посмотреть здесь.
Описание модели данных
Зачастую при создании собственных алгоритмов вам требуются определенные модели данных, с которыми вам было бы удобно работать. Для их создания можно использовать структуры. Структура в проекте это описание типа, имеющего фиксированный набор полей
Фиксированный набор значений
При разработке приложения часто возникает необходимость иметь фиксированные наборы значений, например, состояния заказов (Открыт, В работе, Выполнен) или виды цен (Оптовые, Розничные и т. д.). Эти значения создаете вы, а используют их пользователи, при редактировании прайс-листа или для того, чтобы учесть изменение состояния заказа
Хранение данных
Обычно приложение хранит данные, которые являются уникальными для автоматизируемого предприятия или для автоматизируемой области деятельности. Это может быть список поставщиков, покупателей, товаров, справочник банков, адресный классификатор и т. д. Существуют разные способы хранения данных, которые обусловлены их прикладным смыслом и размером
Контракт
Контракты позволяют описать набор свойств и методов, которые должны быть реализованы в каком-то другом элементе проекта.
Глобальное клиентское событие
Глобальное клиентское событие позволяет описать событие на уровне подсистемы или проекта. .На такое событие могут подписаться другие методы. Это удобно в тех случаях, когда, например, один компонент интерфейса должен оповестить другие компоненты о наступлении некоторого события.
Интеграционная шина

Программное обеспечение, используемое разными компаниями, или даже одной компанией, часто бывает разнородно. Оно создано разными производителями, функционирует в разном окружении, под разными операционными системами. В то же время зачастую необходимо обеспечить совместное функционирование таких разнородных информационных систем, при котором данные из одной системы должны гарантированно поступать в другие системы. При этом может потребоваться какое-то промежуточное преобразование этих данных. Кроме того, получатель или получатели данных могут определяться динамически и зависеть от самих передаваемых данных.

Для решения этих задач в существует механизм, который называется интеграционная шина. Его основу составляет вид элементов проекта ПроцессИнтеграции

HTTP-сервис
HTTP-сервисы позволяют приложениям взаимодействовать друг с другом. Например, чтобы иметь актуальные курсы валют ваше приложение обращается с запросом к стороннему банковскому приложению и получает в ответ курсы тех валют, которые нужны. С другой стороны, приложения, работающие в рамках одного предприятия, также могут нуждаться в данных друг друга. Например, бухгалтерское приложение может обращаться к вашему приложению, чтобы получить список товаров, поступивших на склад предприятия. Таким образом, HTTP-сервис — это способ описать программный интерфейс приложения (API), к которому будут обращаться сторонние приложения с помощью HTTP-запросов
SOAP-сервис
Механизм Web (SOAP) сервисов в является средством поддержки сервисно-ориентированной архитектуры (Service-Oriented Architecture, SOA). Он позволяет обрабатывать входящие SOAP-запросы, поступающие от внешних информационных систем.
Клиент SOAP-сервиса
предоставляет возможность вызывать внешний Web (SOAP) сервис и удобно обрабатывать полученные ответы.
Обновление данных приложения для новой версии проекта
В процессе развития проекта возникают ситуации, когда при переходе на новую версию проекта нужно обновить данные, которые содержатся в приложении. Для этого в существует аннотация @ОбновлениеПроекта, которой следует отметить все методы-обработчики, осуществляющие обновление данных приложения.
Контроль прав доступа
обеспечивает управление доступом к тем данным, которые хранятся в базе данных. Используя ключи и разрешения доступа, вы можете создать систему прав, ограничивающую доступ пользователей к тем данным, которые для них не предназначены
Журнал событий
позволяет описывать события, наступление которых вы хотели бы регистрировать в журнале событий приложения
Мобильный клиент
В отличие от веб-клиента, мобильный клиент, который работает как приложение на мобильном устройстве, нужно дополнительно описать в проекте, после чего собрать и установить на мобильное устройство
Элемент проекта вида «Пользователи»
В любом проекте есть пользователи. Это предопределенный элемент проекта, который описывает пользователей, подключенных к приложению