转换时含智能符号的窗口的行为
- Last UpdatedJun 29, 2026
- 1 minute read
转换机制
在将窗口转换为工业图形时,会首先检查窗口的内容。若窗口包含智能符号,则创建两个图形:第一个图形命名格式为 SmartSymbol_<智能符号名称>,仅包含该智能符号,作为模板使用。该图形通过自定义属性引用与原始智能符号相同的标记。第二个图形使用窗口原名称,包含窗口全部内容(含智能符号 SmartSymbol_<智能符号名称>)。如果在转换前在窗口中覆盖了智能符号引用,则该图形中的智能符号将使用自定义属性引用被覆盖的标记。
将包含智能符号的窗口转换为工业图形后,对智能符号模板的任何更改都必须在名为 SmartSymbol_<智能符号名称> 的转换后图形中进行,该图形充当模板。请注意,修改转换前窗口使用的原始智能符号,不会同步到转换后的图形中。
示例:
假设存在一个名为锅炉 (Boiler) 的智能符号,关联标记温度 (Temp)。该智能符号用于窗口 Plant1 中,并被关联至另一标记 Temp1;该智能符号同时用于窗口 Plant2 中,并被关联至标记 Temp2,以此类推。当 Plant1 窗口转换为工业图形时,将创建两个图形:一个名为 SmartSymbol_Boiler,关联原始标记 Temp,作为模板;另一个图形为 Plant1。Plant1 图形包含 SmartSymbol_Boiler 及其他窗口元素,关联覆盖后的标记 Temp1。同样,Plant2 转换后,将创建图形 Plant2,包含 SmartSymbol_Boiler 并关联覆盖后的标记 Temp2。转换完成后,若需修改图形样式,必须在 SmartSymbol_Boiler 中编辑,修改内容将同步应用到 Plant1 和 Plant2。
覆盖标记传播
被覆盖的标记将在转换后的工业图形中保留并显示。如果智能符号引用到某个标记,然后用另一个标记引用覆盖,则在将窗口转换为工业图形期间,它会将该工业图形引用到被覆盖的标记。
例如:如果一个符号被引用为 Tag1,随后被另一个名为 Tag2 的标记覆盖,那么在将窗口转换为工业图形后,该工业图形将引用 Tag2。
覆盖文本传播
覆盖的文本将保留并显示在转换后的工业图形中。如果智能符号包含文本,随后被另一个文本条目覆盖,那么在将窗口转换为工业图形时,该工业图形将包含被覆盖的文本。
例如:如果一个符号包含文本“Button”,随后被另一个文本“Switch”覆盖,那么在将窗口转换为工业图形后,该工业图形将包含文本“Switch”。
UDT 实例成员支持
“智能符号”对话框与 UDT 实例成员无缝协作,并完全保留覆盖功能。
工业图形创建
每个智能符号将创建一个可复用的独立工业图形,并在窗口层级应用覆盖。在批量导入过程中,如果多个窗口使用了相同的智能符号,则为第一个实例创建的工业图形将在所有使用该智能符号的其他窗口中被复用。在转换后的工业图形中,直接标记引用将替换为自定义属性,以消除冗余的工业图形。由于自定义属性的最大长度为 32 个字符,任何超过 32 个字符的标记名称都将被缩短,并使用特定算法生成一个唯一名称。
例如:如果智能符号的引用为 Tag1,转换后的工业图形将生成 cpTag1(数据类型相同),而动画、脚本和表达式将引用 cpTag1。
智能符号转换的限制
以下列表说明了转换过程的限制:
-
若重命名与智能符号对应的工业图形,窗口转换时将创建新的工业图形。
-
若重命名智能符号本身,窗口转换时将以新的智能符号名称创建新的工业图形。
-
如果删除智能符号,且窗口中仅包含该智能符号,则窗口转换将失败。
-
若智能符号模板不存在,窗口转换后,其智能符号实例内容将丢失。例如,若智能符号模板 SS1 与其他内容一同嵌入窗口 W1,且 SS1 模板已从智能符号库中删除,则 W1 转换后,该智能符号实例内容将不可用。
-
若更新智能符号,窗口转换时将更新对应已存在的工业图形。
-
当智能符号引用的标记名称超过 30 个字符时,系统将自动生成唯一的自定义属性名称。
-
InTouch 实数型标记将映射为双精度自定义属性。
-
如果通过包含特殊字符的标记(例如 Tag@2)引用智能符号,转换后将无法正确解析。
-
若修改了与智能符号对应的工业图形,再次转换该智能符号时,对应工业图形将被再次更新。
示例:
-
如果名为 SS1 的智能符号嵌入在窗口 W1 中,然后转换为工业图形,则会生成 SmartSymbol_SS1 和 W1 这两个符号。
-
若对 SmartSymbol_SS1 进行添加或删除内容等修改,当 SS1 嵌入新窗口 W2 并执行转换时,已创建的 SmartSymbol_SS1 将被同步修改。
-