В созданном разделе Отпуска создадим приложение Отпуск, в котором будем хранить информацию обо всех отпусках за свой счёт в компании.
Важно
Приложение — это ключевой компонент системы, который предназначен для хранения данных и взаимодействия с ними. По своей сути это справочник, в котором можно хранить информацию и взаимодействовать с ней: создавать новые записи, редактировать и просматривать их. У приложения есть контекст, формы и действия.
Контекст — это описание структуры хранения. Он определяет, какие именно данные могут храниться в приложении. Например,
Дата начала,
Дата окончания отпуска и
Сотрудник, который идёт в отпуск. Контекст приложения задаётся в типизированном виде, то есть для каждого поля в контексте приложения указывается
тип данных. От типа данных зависит доступный пользователю способ заполнения и формат хранения в базе данных. Например, когда мы говорим о вводе даты, мы представляем её выбор в календаре, а не ручной ввод с клавиатуры. Поэтому для полей
Дата начала и
Дата окончания мы будем использовать тип данных
Дата/время.
Формы — это представления данных. Форма определяет, как именно данные будут отображаться у пользователя. Например, форма, которая открывается при создании отпуска, должна содержать период отпуска.
Действия — это доступные кнопки взаимодействия с приложением. Например, для сотрудника, инициирующего свой отпуск, это могут быть кнопки:
Создать отпуск,
Перенести отпуск.
Создание приложения
Создание приложения
Для отпусков за свой счёт нам необходимо хранить:
- сотрудника, который собирается в отпуск;
- дату начала — это дата и время начала отпуска за свой счёт. Время здесь необходимо на случай, если отпуск нужен на несколько часов в течение одного дня;
- дату окончания — аналогично дате начала;
- причину — текстовое описание с причиной для информирования руководителя;
- руководителя — это пользователь системы, который согласует отпуск сотрудника.
Добавим необходимые поля в контекст приложения. Каждое свойство, размещённое в области слева, — это поле на форме. Используя технологию Drag-and-Drop, перетаскивайте свойства с боковой панели, чтобы добавить нужные поля. Выберем нужные нам типы данных на боковой панели:
Боковая панель
- Для хранения сотрудника будем использовать тип Пользователь. Он позволяет выбрать активного пользователя системы из списка с возможностью поиска:
Поле «Сотрудник» в контексте приложения «Отпуск»
- Для хранения даты начала и даты окончания будем использовать тип Дата/время. Дополнительно укажем, что время опционально, в этом случае пользователь сможет выбрать сам, указывать его или нет:
Поле «Дата начала» в контексте приложения «Отпуск»
Поле «Дата окончания» в контексте приложения «Отпуск»
- Для хранения причины используем тип Строка. Чтобы пользователь мог описать её развернуто, укажем режим отображения Текст:
Поле «Причина» в контексте приложения «Отпуск»
- Для хранения руководителя используем тип Пользователь:
Поле «Руководитель» в контексте приложения «Отпуск»
Сохранив контекст приложения, мы уже можем с ним работать: формы создания, просмотра и редактирования сформировались автоматически на основании настроенного контекста.
Если заполнить форму создания и сохранить её в системе, появится Элемент приложения.
Форма создания элемента приложения «Отпуск»
Элемент приложения «Отпуск»
Важно
Элемент приложения — это карточка на странице приложения, которая создаётся пользователями и хранит в себе внесённые ими данные.
Например, приложение
Отпуск используется для хранения данных об отпусках сотрудников. Каждый отпуск, добавленный в приложение, будет являться его элементом.
Заголовок элемента — это его название, которое мы заполнили при создании. Чтобы открыть форму просмотра элемента приложения, нажмите на его название. Чтобы изменить его, нажмите кнопку
Редактировать. Кнопка видна только пользователям с
правами доступа на редактирование.
Улучшим форму создания элемента приложения.
Во-первых, поле Название для отпуска можно не заполнять вручную, а формировать его автоматически по шаблону. В нём мы можем использовать контекст приложения. Например, можно настроить шаблон названия таким: Отпуск {$__createdBy.__name} с {$date_start} по {$date_end}. Название элементов с таким шаблоном будет выглядеть так: Отпуск Иванов Петр с 19.04.2023 по 20.04.2023.
Настройки приложения «Отпуск»
Настройка названия элемента приложения «Отпуск»
Во-вторых, у каждого приложения есть системные поля, они создаются и заполняются системой автоматически: Дата создания, Автор, Дата изменения, Редактор. В этом перечне системных полей нам важно поле Автор: именно оно хранит пользователя, который создал отпуск. Таким образом, мы можем не использовать поле Сотрудник, которое мы добавили, а использовать системное поле Автор. Перейдем в расширенный режим настройки формы, чтобы изменить формы создания и просмотра:
Настройки приложения «Отпуск»
Настройка формы приложения «Отпуск»
Расширенный режим настройки форм приложения «Отпуск»
На форме создания:
- уберём с формы поле Сотрудник;
Настройка формы создания элемента приложения «Отпуск»
- добавим обязательность полей.
Настройка формы создания элемента приложения «Отпуск»
На форме просмотра:
- уберём с формы поле Сотрудник;
- добавим поле Автор и переименуем его в Сотрудник.
Настройка формы создания элемента приложения «Отпуск»
Посмотрим, что получилось:
Форма создания элемента приложения «Отпуск»
Форма просмотра элемента приложения «Отпуск»
В-третьих, можно не заполнять вручную поле Руководитель. Система может определить его автоматически, если настроена организационная структура.