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