Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ InTouch HMI

IOSetAccessName() 函数

  • Last UpdatedAug 16, 2021
  • 1 minute read

通过在脚本中使用 IOSetAccessName() 函数,可以实现“动态引用寻址”。IOSetAccessName() 在运行时修改 I/O 标记的“访问名”的应用程序名或主题名的特征。

备注:处理 IOSetAccessName() 函数时,在结束当前的对话并启动新的对话期间,会有一个时间上的延迟。在此期间,任何“插入”或写入新主题的尝试都将丢失。

类别

其它

语法

IOSetAccessName("AccessName", "NodeName", "AppName", "TopicName");

参数

AccessName

要将新的“应用程序名”与“主题名”值指定给它的现有“访问名”。实际的字符串或消息标记。

NodeName

要指定的新“节点名”。实际的字符串或消息标记。

AppName

要指定的新“应用程序名”。实际的字符串或消息标记。

TopicName

要指定的新“主题名”。实际的字符串或消息标记。

附注

指定给 AccessName、AppName 以及 TopicName 参数的值可以指定为字符串,或是使用其它 InTouch 标记或函数提供的字符串值。

如果使用添加访问名对话框为访问名故障转移配置了辅助数据源,则无法在运行时使用 IOSetAccessName() 函数来更改辅助数据源配置。

备注:在 WindowMaker 中创建“访问名”时,如果“访问名”是 SuiteLink 类型,则 InTouch HMI 会阻止“访问名”去访问相同的节点、应用程序以及主题。请勿允许 IOSetAccessName() 函数在运行时将“访问名”重定向到重复项。通过在运行时使用 IOSetAccessName() 函数,SuiteLink 类型的“访问名”可以重定向到重复的主题。重定向后的“访问名”将不起作用。

示例

通过使用以下脚本函数,可以将 MyAccess1“访问名”更改为指向 Excel 应用程序与 [Book1]Sheet1 主题,而不影响当前的 NodeName:

IOSetAccessName("MyAccess1", "", "EXCEL", "[Book1]Sheet1");

如果给“主题”指定空字符串,则“访问名”的当前“应用程序”值会进行更新,它的“主题”值会保持不变。

例如,以下脚本将 MyAccess2“访问名”的“应用程序名”更改为 EXCEL,而不影响当前的“主题”值:

IOSetAccessName("MyAccess2", "", "EXCEL", "");

如果仅仅给“应用程序名”指定空字符串,则标记的当前“主题”值会进行更新,但它的“应用程序”值会保持不变。例如,以下脚本将 MyAccess3 标记的“主题”更改为 [Book2]Sheet1,而不影响它的当前“应用程序名”值:

IOSetAccessName("MyAccess3", "", "", "[Book2]Sheet1");

本例可用于必须采用 PLC 冗余配置的情况。