Атрибут типа «Список значений». Вычисление значения по справочнику
Содержание
Прикладная задача
В этой статье представлен способ вычисления значения атрибута типа «Список значений» по справочнику из связанного шаблона.
Для примера настроим простейшую форму заказа пассажирской перевозки следующим образом:
- Заказчик создаёт заявку на перевозку и выбирает её тип:
- автобусная перевозка;
- грузоперевозка;
- перевозка на легковом автомобиле;
- перевозка на микроавтобусе.
- На форме заявке автоматически отображается подходящий для выполнения заявки тип транспортного средства.
Исходные данные
Для выполнения примера создайте указанные в следующей таблице шаблоны и атрибуты.
Название / системное имя шаблона записи | Название / системное имя атрибута | Тип атрибута | Описание |
Типы заявок / RequestTypes |
Наименование типа заявки / Name | Текст |
Атрибут «Наименование типа заявки» содержит наглядное название типа заявки. Атрибут «Код типа заявки» содержит условное обозначение типа заявки. |
Код типа заявки / Code | Текст | ||
Заявки / Requests | Тип заявки / RequestType | Запись |
Атрибут «Тип заявки» связан с шаблоном «Типы заявок». |
Практический пример
-
В шаблоне «Типы заявок» создайте четыре записи:
Наименование типа заявки Код типа заявки Автобусная перевозка bus Грузоперевозка truck Перевозка на микроавтобусе van Перевозка на легковом автомобиле passengerCar - Поместите на форму и в таблицу шаблона «Заявки» атрибут «Тип заявки».
- Создайте и поместите на форму и в таблицу шаблона «Заявки» атрибут «Тип транспортного средства»:
- Тип данных: Список значений
- Формат отображения: Бейдж
- Вычислять автоматически: флажок установлен
- Вычисляемое значение: формула
ENUMVALUE("VehicleType",$RequestType->Code)
Синтаксис формулы
ENUMVALUE(enumAttributeSystemName, enumValueSystemName)
— эта функция принимает два аргумента: системное имя атрибута типа «Список значений» и системное имя одного из значений этого атрибута, и возвращает ID указанного значения.ENUMVALUE("VehicleType",$RequestType->Code)
— возвращает строку с ID значения атрибутаVehicleType
, соответствующего значению атрибутаCode
из записи шаблона «Типы заявок», на которую ссылается атрибутRequestType
.- Данная формула присваивает атрибуту «Тип транспортного средства» значение, соответствующее из справочника типов заявок
- Список значений:
Системное имя RU Цвет Значок bus Автобус #ff0000 bus passengerCar Легковой автомобиль #0000ff car truck Грузовик #00ff00 truck van Микроавтобус #ffff00 van-shuttle Примечание
Системные имена значений атрибута должны совпадать со значениями атрибута «Код типа заявки» ранее созданных записях шаблона «Типы заявок»:
bus
,passengerCar
,truck
,van
- Откройте форму и в поле «Тип заявки» выберите любое значение.
- В поле «Тип транспортного средства» должны автоматически отображаться соответствующие значения.
Автоматическое вычисление значения атрибута типа «Список значений» по значению атрибута из справочника - Откройте таблицу с записями шаблона «Заявки».
- Столбец «Тип транспортного средства» должен выглядеть как показано на иллюстрации.
Представление атрибута типа «Список значений» в таблице
Связанные статьи
Атрибут типа «Список значений»
Атрибут типа «Список значений». Вычисление текущего значения
Эта статья была полезна 1 чел.