丙通全国分支机构: 广州总部 |
欢迎光临丙通MRO官网,我们竭诚为您服务!BTONE专注行业,提供更专业便捷的MRO供应!

我的购物篮0

登录 | 注册 |

行业资讯

大型水泵行业发展现状、市

大型水泵行业发展现状、市场需求及未来前景战略随着全球城市化和工业化的不断推进,以及发展中国家基础设施建设的加速,水泵作为水资源输送的关键设备,其市场需求将持续增长。特别是大型水泵,在水利发电、农业灌溉等大规模用水领域具有不可替代的作用,因此其市场规模也有望进一步扩大。

固态电池:石墨烯领跑,新

固态电池:石墨烯领跑,新材料破局宁德时代、南都电源、赣锋锂业等巨头的陆续下场,被视作固态电池爆发前夜的信号。此时,一直被提及但十分神秘的新材料——石墨烯,有望领跑固态电池赛道,并在固态电池产业化进程中注入强心剂。

工信部:前三季度规模以上

工信部:前三季度规模以上工业增加值同比增长 5.8%,工业投资连续 8 个月保持两位数增长前三季度规模以上工业增加值同比增长 5.8%,对宏观经济增长发挥 " 压舱石 " 作用,贡献率接近 4 成。31 个省(区、市)和 41 个工业大类行业的增长面均超九成。

我国制造业企业总量突破

我国制造业企业总量突破 600 万家,与去年底相比增长 5.53%IT之家 9 月 24 日消息,据新华社援引全国组织机构统一社会信用代码数据服务中心统计报道,截至 2024 年 8 月 31 日,我国制造业企业总量达到 603 万家。

微特电机行业市场发展现

微特电机行业市场发展现状全球微特电机行业发展至今已近百年,具备先进的设计能力、成熟的关键工艺和精密加工能力,实现了自动化和规模化生产。随着发展中国家的广泛应用需求而实现技术水平与市场规模的持续提升,应用领域从音响设备、家电设备、办公自动化设备行业逐步拓展到医疗器械、工业自动化、新能源汽车、机器人等产业。

工业自动化行业市场现状

工业自动化行业市场现状、前景趋势研究分析近年来,国内工业自动化企业在技术创新方面取得了显著进展。一些国产品牌在伺服系统、PLC等领域实现了技术突破,市场份额不断提升。工业自动化正朝着智能化方向发展。智能控制系统、传感器、物联网(IIoT)等技术的广泛应用,使得工业自动化系统更加智能、高效和可靠。

技术方案

热门资讯

社会百象

您现在的位置: 首页 > 资讯中心 > 技术方案 > 施耐德Q6108如何获得当前登录用户所属的角色

施耐德Q6108如何获得当前登录用户所属的角色

2013-01-10

浏览次数:279

施耐德Q6108如何获得当前登录用户所属的角色

 

适用于:

  CitectSCADA 7.10,7.20

 

概述:

如何获得当前登录用户所属的角色呢?

 

解决方法:

Citect7.10中用户隶属于角色,这些角色共同来定义用户访问的区域和权限。当前活动

角色的列表在运行时并不能获得,但是可以通过调用DevOpen()和DevFind()函数来查找

users.dbf来获得当前的角色。

 

如果用户使用Windows集成帐户,那么Windows的组会链接到Citect中的角色。这时

就不能通过查找users.dbf来查找当前角色了,因为当前用户并不在Citect中定义。一个变

通的方法是在角色的“进入命令”中查找当前活动角色。

施耐德Q6108如何获得当前登录用户所属的角色将下列Cicode添加到您的工程中。然后打开工程管理器。按下F2键查看详细内容。将

每一个角色的“进入命令”设置为RoleSet("<角色名称>")来保存角色名称,将“退出命令”

设置为  RoleSet(""),使其在退出时清空。

 

INT    mnMaxRoles = 16;

STRING  msCurrentRoles[16];

STRING  msCurrentUser = "";

INT    mnCurrentRole = 0;

 

 

//Add  the  specified  role  to  the  current  user's  roles  list.  This  is  called  by  the  Role's  Entry

Command.

//Call RoleSet("") from the Role's Exit command to clear the list of roles.

FUNCTION

RoleSet(STRING sRole = "")

 

  STRING sUserName = Name();

  EnterCriticalSection("RoleSet");

  IF StrLength(sRole) > 0 THEN

    IF msCurrentUser <> sUserName THEN

      msCurrentUser = sUserName;

      mnCurrentRole = 0;

END

  

    IF mnCurrentRole < mnMaxRoles THEN

      msCurrentRoles[mnCurrentRole] = sRole;

      ErrLog("RoleSet('" + sRole + "') added role " + mnCurrentRole:#);

      mnCurrentRole = mnCurrentRole + 1;

    ELSE

      ErrLog("RoleSet() Too many roles to store");

    END

  ELSE

    ErrLog("RoleSet() clearing roles");

  

    mnCurrentRole = 0;

    msCurrentUser = "";

  END

  LeaveCriticalSection("RoleSet");  

END

 

//Check if the current user has the specified role

//

//Returns TRUE if the user has the role or the role was blank, otherwise FALSE.

//

INT

FUNCTION

UserHasRole(STRING sRole)

  

    INT    nRole = 0;

STRING  sUser = Name();

 

  //If no role was specified, allow access

  IF StrLength(sRole) = 0 THEN

    RETURN TRUE;

  END

    FOR nRole = 0 TO mnMaxRoles - 1 DO

      IF msCurrentRoles[nRole] = sRole THEN                        

        RETURN TRUE;

      END

    END                       

    RETURN FALSE;

END

 

例如:

“角色名称”:Admin

“Windows组名”:Administrators

“全局权限”:1...8

“进入命令”:RoleSet("Admin")

“退出命令”:RoleSet("")

 

那么活动的角色列表将会被保存在msCurrentRoles[]数组中。检查当前用户是否属于某

一个角色,请使用Cicode:UserHasRole(sRole)。

例如:UserHasRole("Admin")

 信息来源:施耐德官方网站。

本文地址:http://www.btone-mro.com/BtoneInform/newsContent.aspx?id=1058


Copyright 2008-2011 广州丙通电子元件有限公司 粤ICP备19120971号-1
地址:广州市黄埔区埔南路63号科研办公楼201-208房 电话:020-31701070 传真:020-31702851

知名品牌  |  XML地图      需要MRO工业品的朋友欢迎来丙通MRO采购!