使用 iLogic 显示消息

使用 iLogic 规则在 Configurator 360 中显示消息。

三个镶嵌面控制消息:

  1. 若要创建消息,请使用 iLogic 创建三个遵循以下命名约定的自定义 iProperty:
    • C360MessageTextYourMessageID(字符串型)
    • C360MessageSeverityYourMessageID(字符串型)
    • C360MessageTriggeredYourMessageID(布尔型)
  2. 将 YourMessageID 命名为任意字符串以标识您的消息,并将此 ID 用于三个特性。

    YourMessageID 可以包含一个前导下划线。

    示例:

    • _01
    • _sizeTooLarge
  3. 将文本特性设置为您希望用户看到的字符串。
  4. 将严重性特性设置为以下三个字符串之一:
    • 信息
    • 警告
    • 错误
  5. 将触发的特性设置为布尔(是/否)值。
    注: 触发的特性必须始终根据规则设置为正确的值,并且不能依赖于任何先前的设置。
  6. 确保自定义 iProperty 与参数处于同一文件中。例如,当使用骨架文件时,特性必须在骨架文件中。
  7. 例如,您的某个 iLogic 规则执行以下操作:

    widthValid = (width<1000)
    depthValid = (depth<1000)
     
    oneValid = (widthValid Or depthValid)
     
    iProperties.Value("Custom", "C360MessageText_NeitherDimValid") = "One dimension must be less than 1000mm"
    iProperties.Value("Custom", "C360MessageSeverity_NeitherDimValid") = "Error"
    iProperties.Value("Custom", "C360MessageTriggered_NeitherDimValid") = Not oneValid
    注: 如有必要,iProperties.Value 会创建 iProperty。
  8. 对于文本或严重性:
    • 当文本或严重性永远不会更改(常用)时,在“iProperty”对话框中(而不是使用 iLogic)创建适当的自定义 iProperty。
    • 当文本或严重性发生更改时,则在每次运行规则时将其更改为正确的值。不要依赖于可用或保留的上一个值。
  9. 当您将设计上传到 Configurator 360 并更改尺寸时,将显示以下消息:

    请注意,只要“宽度”或“深度”发生更改,就会运行上面显示的规则。它会在 EVERY 条件下,将触发的 iProperty 设置为正确的“打开”或“关闭”状态(例如,它不会查看触发的特性值,并忽略其是否已正确设置)。

最佳实践

如果您的规则更改三个相关特性之一的值,则规则必须在所有情况下设置该值。
注: 由于某个贡献参数的值发生更改,规则会更改该值。
正确做法(容易出错):
If (myParam > 100) then
   iProperties.Value("Custom", "C360MessageTriggered_MyMessage") = true  
else
   iProperties.Value("Custom", "C360MessageTriggered_MyMessage") = false
end if
不正确做法:
If (myParam > 100) then
   iProperties.Value("Custom", "C360MessageTriggered_MyMessage") = true  
End if
注: 该展示不正确做法的示例未关闭先前打开的消息。由于 Configurator 360 进行缓存,因此无法在 myParam <= 100 时预测消息何时打开或关闭。

最佳实践

使用测试作为值:

iProperties.Value("Custom", "C360MessageTriggered_MyMessage") = (myParam > 100)
该做法较为理想,因为它消除了忘记 else 子句的情况。