Пример настройки нескольких правил, наборов правил и взаимосвязей
Ниже приведен другой пример конфигурирования правил для нескольких изделий и нескольких взаимосвязей. В данном случае имеется 4 правила, 4 набора правил и 4 контейнера.
После создания всех правил можно сконфигурировать рабочий процесс для использования этих наборов правил с использованием кода, подобного следующему:
com.ptc.core.businessRules.engine.BusinessRuleSetBean[] ruleSetBeans =
new com.ptc.core.businessRules.engine.BusinessRuleSetBean[] {
com.ptc.core.businessRules.engine.BusinessRuleSetBean.
newBusinessRuleSetBean("CNOrgRuleSet",
com.ptc.core.businessRules.engine.BusinessRuleSetBean.PRIMARY_BUSINESS_OBJECT),
com.ptc.core.businessRules.engine.BusinessRuleSetBean.
newBusinessRuleSetBean("AffectedPartProdRuleSet",
wt.change2.AffectedActivityData.class.getName()),
com.ptc.core.businessRules.engine.BusinessRuleSetBean.
newBusinessRuleSetBean("ResultingPartProdRuleSet",
wt.change2.ChangeRecord2.class.getName())
};
com.ptc.core.businessRules.validation.RuleValidationResultSet
resultSet = wt.businessRules.BusinessRulesHelper.engine.execute(primaryBusinessObject,
ruleSetBeans );
Примеры
Деталь, входящая в Изделие 1, которое является результирующим объектом, должна была бы (согласно правилу) иметь наименование, состоящее менее чем из 10 символов, и Изделие 1 не может быть взято на изменение.
Для документа, входящего в Изделие 2, который является результирующим объектом, отсутствуют правила. Это объясняется тем, что правила существуют только для деталей.
Было ли это полезно?