pageInfo=#pageInfo#
id="#d.modifier_id#"
status=#pageInfo.status#
trackOut="tr"
idAttributesOut="id"
/>
select
a.login as creator, a.shortname as creator_shortname, m.login as updater, m.shortname as updater_shortname
from #pageInfo.entity# e
left outer join usr a on (e.creator_id=a.usr_id)
left outer join usr m on (e.updater_id=m.usr_id)
where e.#pageInfo.key#=
select
m.modifier_id, c.modifier_class
from modifier m
left outer join modifier_class c on (m.modifier_class_id=c.modifier_class_id)
where m.modifier_id=
Характеристика (модификатор)
#qDecoration.modifier_class#
[#d.modifier_class_id#]:#d.modifier#
[#d.modifier_id#]
#status.errorMessage#
Класс характеристики
select modifier_class_id, modifier_class
from modifier_class
order by 2
/>
Характеристика (RUS)
Характеристика (ENG)
Код
Сортировка
Целое число - порядок, в котором Характеристика будет выводиться в списке (или соответствующий Вариант услуги в списке вариантов). Рекомендуется ставить через 100, чтобы потом удобнее было тасовать
select distinct
s.service_id
,a.abstract_service_id
,a.code as abstract_service_code
,a.abstract_service
,m.modifier
from service s
left outer join modifier m on (s.modifier_id=m.modifier_id)
left outer join abstract_service a on (s.abstract_service_id=a.abstract_service_id)
where s.modifier_id=
order by a.code, a.abstract_service
Конкретные услуги (варианты услуги) определяются значением характеристики-модификатора. В тривиальном случае услуга может иметь только один вариант. Разные варианты услуги могут иметь различный состав компонентов (более того, этот состав определяется именно для конкретной услуги), например, в разных кластерах виртуализации может быть доступен разный набор типов дисков.
Один и тот же класс модификатора может применяться к разным абстрактным услугам.
Модификатор может состоять из нескольких переменных, например, система виртуализации + частота процессора. В этом случае в справочник нужно включить все актуальные комбинации