Формы полей#

Для удобства оцифровки QGIS позволяет настраивать форму ввода атрибутов.

Зайдите в Свойства слоя на вкладку Формы полей.

../../_images/layerprop_fieldforms_ru.png

Есть три варианта работы с формами (выбираются в выпадающем меню наверху вкладки):

  • Создать автоматически;

  • Конструктор форм;

  • Из файла.

При автоматическом создании настроенные элементы будут выстроены один за другим в окне формы.

../../_images/automatic_form_ru.png

Рис. 1019. Форма, автоматически созданная из настроенных полей#

Конструктор позволяет распределять поля по вкладкам и выстраивать в нужном порядке, а также настраивать внешний вид формы.

../../_images/designer_form_ru.png

Рис. 1020. Форма, созданная в конструкторе#

На вкладке Формы полей слева расположен список доступных виджетов:

  • Поля

  • Отношения

  • Действия

  • Другие виджеты (QML, HTML, текстовый и Spacer)

Для каждого поля доступны следующие настройки:

Общие:

  • Псевдоним - отображаемое в интерфейсе ввода название поля;

  • Флажок Поле ввода - если его снять, значение поля нельзя будет редактировать через форму;

  • Флажок Использовать последние введённые значения атрибутов - убыстряет процесс, если нужно вводить подряд несколько объектов, у которых значение одного из атрибутов совпадает - например, адреса по одной улице;

  • Флажок Размещать подпись над полем (по умолчанию - слева от поля).

Вид формы - выбирается из выпадающего списка, доступные варианты и дальнейшие настройки зависят от типа данных.

Здесь можно выбрать вид Скрытое поле, тогда оно не будет показываться в форме ввода значений атрибутов. Это удобно, если поле заполняется автоматически.

Ограничения - можно установить, что поле обязательно должно быть:

  • непустым;

  • уникальным (например, поле fid);

  • соответствующим заданному выражению, например, not regexp_match(col0,'[^A-Za-z]') - только символы латинского алфавита.

Если ограничение установлено, то во время ввода значений при выполнении всех условий рядом с полем отображается зелёная галочка. Если условие не выполнено, рядом с полем отображается оранжевый крестик. Флажок принудительное ограничение не позволяет сохранить объект, не выполняющий условия. Без него пользователь будет предупреждён, но сможет сохранить изменения.

../../_images/fields_with_constraints_ru.png

Рис. 1021. Поля с ограничениями: выполненным, невыполненным, принудительным - не дающим сохранить объект#

Также для поля можно задать значение по умолчанию.

Виды форм#

Рассмотрим подробне настройки основых видов форм.

  • Флажок

  • Текстовое поле

  • Карта значений

  • Диапазон

  • Цвет

  • Дата/время

  • Вложение

  • Скрытое поле

Флажок#

Такое поле имеет два варианта значения: для включённого и отключённого флажка. При этом тип поля не обязан быть логическим, это может быть текстовое поле со значениями «есть» и «нет», «справа» и «слева» и т.п.

../../_images/form_checkbox_result_ru.png

Рис. 1022. Флажок в форме#

../../_images/form_checkbox_set_ru.png

Рис. 1023. Настройки флажка#

При этом можно выбрать, как отображать значение поле в таблице атрибутов - использовать подставляемые значения или стандартные логические «истина» и «ложь».

Текстовое поле#

Поле для ввода текста с клавиатуры. Возможные настройки:

  • Многострочное - позволяет делать перенос строки внутри поля;

  • HTML.

../../_images/form_textedit_set_ru.png

Рис. 1024. Настройки текстового поля#

../../_images/form_textedit_result_ru.png

Рис. 1025. Форма с текстовыми полями: однострочными и многострочным#

Карта значений#

Можно предоставить пользователю возможность выбирать значение из выпадающего списка.

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

../../_images/form_valuemap_result_ru.png

Рис. 1026. Два поля с выпадающими списками в форме#

../../_images/form_valuemap_set_ru.png

Рис. 1027. Настройки карты значений#

Список вариантов можно ввести вручную или загрузить из файла в формате CSV.

Для PostgreSQL для полей с типом array также можно установить вид формы Список - это будет список возможных значений в одну колонку.

См. также

В Веб ГИС также можно добавить к слою фиксированный список вариантов значений при помощи ресурса Справочник.

Диапазон#

Поле для ввода числовых значений из заданного диапазона.

Может представлять собой:

  • поле ввода со счётчиком;

  • ползунок;

  • «циферблат» - круглую ручку управления.

../../_images/form_range_result_ru.png

Рис. 1028. Три варианта ввода диапазона#

Настройки:

  • Минимум;

  • Максимум;

  • Шаг;

  • Разрешить значения NULL;

  • Подпись единиц.

../../_images/form_range_set_ru.png

Рис. 1029. Настройки диапазона#

Цвет#

В форму добавляется стандартный интерфейс выбора цвета QGIS в двух вариантах. Нажатие на стрелочку вызвает более компактный диалог, на кнопку - более развёрнутый. Выбранный цвет отображается на кнопке.

../../_images/form_color_result_ru.png

Рис. 1030. Выбор цвета в компактном варианте диалога#

Дата/время#

Позволяет выбрать дату, используя интерфейс календаря.

Также можно настроить формат записи. По умолчанию выбран формат ISO Qt: yyyy-MM-dd для дат, либо yyyy-MM-ddTHH:mm:ss (например, 2017-07-24T15: 46: 29) или с суффиксом часового пояса (Z для UTC, смещение как [+|-]HH:mm).

../../_images/form_datetime_result_ru.png

Рис. 1031. Поля ввода даты/времени#

../../_images/form_datetime_set_ru.png

Рис. 1032. Настройки поля ввода даты/времени#

Вложение#

Этот вид формы позволяет прикреплять к объектам изображения, аудиофайлы и другие файлы.

Тип хранилища:

  • Выбрать существующий файл

  • Простое копирование

  • WebDAV хранилище

  • AWS S3

Вариант «Выбрать существующий файл» позволяет просто добавить вложение с устройства. Можно задать путь по умолчанию.

Настраивается:

  • способ хранения пути к файлу: Абсолютный или относительный;

  • режим хранения: расположение файлов или расположение каталогов.

  • встроенный просмотр вложений. Он доступен для изображений, аудио, видео и веб-страниц. Размеры миниатюры настраиваются для всех этих типов, кроме аудио.

../../_images/form_attachment_set_ru.png

Рис. 1033. Настройки поля вложения#

../../_images/form_attachment_result_ru.png

Рис. 1034. Предпросмотр добавленного изображения в форме#

Скрытое поле#

Среди атрибутов слоя могут быть служебные поля, которые пользователю не нужно заполнять вручную. Чтобы они не занимали места на форме, а также чтобы избежать поломки файла при случайном вводе ошибочного значения, эти поля можно скрыть.

Для этого в разделе Вид формы выберите в выпадающем списке Скрыто.

../../_images/form_hidden_set_ru.png

Рис. 1035. Настройки скрытого поля#

Характерный пример - поле fid в файле формата GeoPackage. Его изменение может нарушить структуру файла.

../../_images/form_hidden_result_ru.png

Рис. 1036. Атрибуты слоя и форма: красным помечены скрытые поля#

Если поле должно оставаться видимым, но не должно редактироваться, снимите флажок «Поле ввода» в разделе «Общие», а в разделе «Вид формы» оставьте подходящее значение, например, «Текстовое поле».

../../_images/form_readonly_set_ru.png

Рис. 1037. Настройки поля, недоступного для редактирования через форму#

../../_images/form_readonly_result_ru.png

Рис. 1038. Поле, видимое, но недоступное для редактирование в форме#

Автоматически заполняться могут не только служебные поля, подробнее.

Значение по умолчанию#

Для поля можно установить значение по умолчанию:

  • Фиксированное значение - стандартный вариант или пример для заполняющего;

  • Переменная - например, @user_account_name, чтобы сохранить имя пользователя, вносящего изменения;

  • Выражение - например, автоматически рассчитывающаяся площадь объекта area ($geometry).

Также в разделе «Общие» можно включить флажок «Использовать последние введённые значения атрибутов», тогда в форму автоматически будет подставляться предыдущее введённое значение.

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