Свойство ValidationRule.TestExpression (Visio)
Возвращает или задает логическое выражение, определяющее, удовлетворяет ли целевой объект правилу проверки. Для чтения и записи.
Синтаксис
выражение. TestExpression
Выражение Переменная, представляющая объект ValidationRule .
Возвращаемое значение
String
Замечания
При проверке схемы путем вызова метода Validate или нажатия кнопки Проверить схему на вкладке Процесс Microsoft Visio использует тестовое выражение, заданное в качестве значения свойства TestExpression , чтобы определить, удовлетворяет ли целевой объект правилу проверки. Если тестовое выражение имеет значение False, Visio создает проблему проверки. Если тестовое выражение имеет значение True, проблема проверки не возникает.
Visio вычисляет тестовое выражение для целевых объектов только в том случае, если значение свойства FilterExpression объекта ValidationRule принимает значение True.
Синтаксис значения свойства TestExpression совпадает с синтаксисом для выражения ShapeSheet. При установке значения свойства TestExpression Visio не проверяет синтаксис выражения теста. Если тестовое выражение не синтаксически правильно, оценка выражения завершается ошибкой во время проверки, и Visio в это время создает проблему проверки.
Пример
В следующем примере Visual Basic для приложений (VBA) показано, как использовать свойство TestExpression, чтобы определить, удовлетворяет ли конкретный целевой объект фигуры правилу проверки.
' Add a validation rule to the document.
Set vsoValidationRule = vsoValidationRuleSet.Rules.Add("Unglued2DShape")
vsoValidationRule.Category = "Shapes"
vsoValidationRule.Description = "This 2-dimensional shape is not connected to
any other shape."
vsoValidationRule.Ignored = False
vsoValidationRule.TargetType = Visio.VisRuleTargets.visRuleTargetShape
' The validation function Is1D() returns a Boolean value that indicates
' whether the shape is 1D (True) or 2D (False).
vsoValidationRule.FilterExpression = "NOT(Is1D())"
' The validation function GLUEDSHAPES returns a set of
' shapes glued to the shape.
' It takes as input one parameter that indicates the direction of the glue.
' The direction values are equivalent to members of VisGluedShapesFlags:
' 0 = visGluedShapesAll1D, and 3 = visGluedShapesAll2D
' It takes as input one parameter indicating the direction of the glue.
' The validation function AGGCOUNT takes a set of shapes as its input, and
' returns the number of shapes in the set.
vsoValidationRule.TestExpression = "AGGCOUNT(GLUEDSHAPES(0)) + AGGCOUNT(GLUEDSHAPES(3)) > 0"
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.