在进行区域权限检查时,如何组态画面切换?

n
说明:
在系统画面中可以用“buttons”迅速跳转到其它系统画面。如果通过“direct coection”组态画面切换,则不 检查当前登录用户的权限。这就意味着操作员即使没有某一区域的权限,也可以跳转到该区域内的画面。另一方面,如果通过“c action”组态画面切换,可以 编写一个该区域的权限检查程序,在画面切换后出现。n
在下面的实例中,可以看到 c 脚本“isssm_changeworkfield()”。n
图 01n
可以下载该实例。n
isssm_changeworkfield.zip ( 3 kb ) n
函数:
函数“isssm_changeworkfield()”用 wincc 的标准函数“ssmgetroottopicture()”来确定过程画面的相关区域 。如果已将过程画面分配给某个确定区域,则可以使用 wincc 的标准函数“passcheckarealevelpermission()”确定是否允许在这一区域进行操作。如果得到准许,则可以通过 wincc 的标准函数“ssmchangeworkfield()”完成画面切换。n
这种方式中该函数仅在能将可选择画面分配给某个区域的地方支持画面切换。这就意味着画面必须被分配给 picture tree manager 中的层级结构。 如果未将要选择的画面分配给某个区域,则不能执行画面切换。在这种情况下,通过 wincc 的标准函数“passchecklevelpermission()”检查常规 权限或许有用。n
注意事项:
此实例使用了标准 wincc 函数,以及 split screen manager (基本过程控制) 的函数。在 wincc 联机帮助“wincc information system > options > options for process control > system overview of control options > configuring in the pcs 7 environment > notes on configuring in the pcs 7 environment”中可以获得更多的信息。n
说明:
为了使用函数“isssm_changeworkfield()”,请下载归档文件“isssm_changeworkfield.zip”。将包含在归档中的文件“isssm_changeworkfield.fct”复制到工程的“library”文件夹内,并在全局脚本 c 编辑器中执行菜单命令“options > regenerate header”。
现在,可以在图形编辑器中组态画面切换。下图给出了一个 isssm_changeworkfield() 函数的调用实例。
图 02
关键字:
区域权限