English Español Deutsch Italiano Polski Nederlands Português Français 中文 日本語 हिन्दी اللغة العربية Русский Українська עִברִית Ελληνικά Türk Latvietis Dansk Norsk Íslenska 한국어 Suomen Gaeilge Bahasa Melayu Svenska Čeština
Войти
Русский

Войти

 

Зависимое поле

Данная функция позволит фильтровать содержимое поля в зависимости от выбранного значения в другом поле

Рады представить новую функцию на сервисе QuintaDB.

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

Рассмотрим пример создания и использования зависимых полей.

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

1. Создаем форму "Марки авто" с типом поля Радио кнопка с тремя марками автомобилей:

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

3. Создаем следующую форму "Модели авто".

3.1. Необходимо создать поле с типом Связь

В этом примере связь с полем "Марка авто" из формы "Марки авто". Тип связи Многие-к-одному, Радио кнопка.

3.2. Второе поле с типом Радио кнопка со списком всех моделей.

4. Заполняем таблицу "Модели авто" таким образом, чтобы модель соответствовала марке авто.

Мы использовали тип связи Многие-к-одному т.к. у одной марки может быть несколько моделей. 

5. Создаем форму "Конфигурация".

  5.1. Добавляем в форму два поля с типом Связь. Первое связанно с полем "Марка авто" из формы "Марки авто". 

  5.2. Второе с полем "Список моделей" из формы "Модели авто". В обоих случаях Тип связи Многие-к-одному, Радио кнопка.

  5.3. Открываем редактирование поля "Модель".

 

После того как мы создали Связь между формами описаную в пункте 3.1, нам стала доступна функция Зависимое поле.

Другими словами, чтобы функция стала доступна для связанного поля в форме "В" нужно связать форму "В" с формой "А" и "Б", при этом между формами "А" и "Б" должна быть связь.

 

Устанавливаем флажок напротив опции Зависимое поле.

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

6. Создаем третье поле с типом Радио кнопка "Вид топлива".

В итоге имеем следующую форму:

7. Добавляем записи в данную форму:

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

Так выглядит таблица с записями:

8. Теперь создадим форму заказа.

  8.1. Добавим поле "Имя покупателя", тип: Строка текста

  8.2. Форму "Заказ" необходимо связать со всеми предыдущими.

Второе поле - Связь с полем "Марка авто" из формы "Марки авто". Тип связи Многие-к-одному, Радио кнопка.

Третье - с полем "Список моделей" из формы "Модели авто". Тип связи Многие-к-одному, Радио кнопка.

Четвертое - с полем "Вид топлива" из формы "Конфигурация". Тип связи Многие-к-одному, Радио кнопка.

  8.3 Включаем опцию Зависимое поле. Поле "Модель" зависит от поля "Марка авто", а поле "Вид топлива" от поля "Модель".

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

9. Для удобства расположим три последних поля на одну строку.

(Из этой статьи вы можете узнать как это сделать).

10. Форма готова. Осталось проверить ее и добавить записи:

Таблица с записями:

Надеемся, что данная функция будет полезной для вас!


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

Andriy Zhuravel

Супер! Спасибо будем тестировать!

Поделиться обсуждением в социальных сетях: