Возможности управления данными > Управление конфигурируемыми изделиями > Возможности Windchill по управлению опциями и исполнениями > Назначение выражений > Конфигурирование выражений
  
Конфигурирование выражений
Сопоставление операторов, используемых в выражениях
Символы, используемые для логических операторов, отображаемых в интерфейсе пользователя, можно сопоставить с внутренними символами для логических операторов ("&&", "||", "!"), хранящимися в базе данных.
Чтобы задать пользовательские логические операторы в выражениях, укажите в файле свойств WT_HOME\codebase\wt.properties следующие значения:
ato.conjunction.operator
ato.disjunction.operator
ato.negation.operator
Файл загрузки использует операторы AND (логическое И), OR (логическое ИЛИ) и ! (логическое НЕТ) для загрузки выражений и не является конфигурируемым.
Значения по умолчанию:
Для оператора И: ato.conjunction.operator=+
Для оператора ИЛИ: ato.disjunction.operator=/
Для оператора НЕ: ato.negation.operator= -
Чтобы задать собственные значения для операторов И, ИЛИ и НЕ, укажите собственные символы после знака "=". При определении выражений эти символы используются для обозначения операторов конъюнкции (логический И), дизъюнкции (логический ИЛИ) и отрицания (логический НЕ). Например:
-red + -(green / white / -blue)
Использование конвертера выражений для поддержки специфичных форматов сайта
Сайты могут настроить формат ввода и отображения выражений с помощью конвертера выражений, доступного в Windchill.
Чтобы задать пользовательский конвертер формата выражения, выполните следующие действия:
1. Создайте класс, реализующий свойство com.ptc.wpcfg.logic.ExpressionFormatConverter, которое определяет следующие три метода:
Метод преобразования пользовательского подвыражения в стандартное
public String toInternalSubexpressionFormat(String externalSubexpressionString)
Аргумент externalSubexpressionString представляет строку подвыражения во внешнем (пользовательском) формате, который используется при вводе выражений в интерфейс пользователя для определения выражений. Пользовательский формат используется при назначении выражений связям использования детали и деталям, а также при определении выражений для условного правила.
Метод возвращает строку подвыражения во внутреннем стандартном формате, где операнды являются наименованиями вариантов, если они представляют допустимые идентификаторы Java, и заключенными в кавычки наименованиями вариантов, если они не являются допустимыми идентификаторами Java. Логические операторы конъюнкции И, дизъюнкции ИЛИ и отрицания НЕ должны соответствовать определениям, заданным в свойствах ato.conjunction.operator, ato.disjunction.operator и ato.negation.operator в файле wt.properties. Стандартные значения операторов: "+" для конъюнкции, "/" для дизъюнкции и "-" для отрицания.
Методы преобразования стандартного подвыражения в пользовательское
public String toExternalSubexpressionFormat(String internalSubexpressionString)
Аргумент internalSubexpressionString представляет строку подвыражения во внутреннем стандартном формате. Метод возвращает строку подвыражения во внешнем (пользовательском) формате. Этот формат используется в интерфейсе пользователя для определения выражений.
Метод пользовательского отображения выражений
public String toExternalExpressionFormat (String [] internalSubexpressionStrings)
Аргумент internalSubexpressionStrings представляет собой массив строк подвыражений во внутреннем стандартном формате, следующих в том же порядке, что и в интерфейсе пользователя для определения выражений. Метод возвращает всю строку подвыражения во внешнем (пользовательском) формате. Этот формат будет использоваться при отображении выражения в назначенных столбцах выражения в навигаторе структуры изделия, в столбцах определения правила в различных таблицах условных правил, а также на информационных страницах условных правил. При реализации этого метода можно использовать метод toExternalSubexpressionFormat(String) для преобразования подвыражений в пользовательский формат.
2. Зарегистрируйте полный путь к классу конвертера выражений в свойстве ato.expression.converter в файле wt.properties . Например:
ato.expression.converter=ext.customer.expr.format.CustomExpressionFormatConverter.