丙通全国分支机构: 北京 | 上海 | 天津 | 广州 | 中山 | 佛山 | 深圳南山区 | 深圳 | 杭州 |

广州市丙通电子元件有限公司

通用产品分类

相关文章

行业资讯MORE

北汽集团与西门子的合作

合资公司将生产包括电机和电工电气设备在内的电驱动动力总成。2014年北京国际汽车展览会上,全球领先电驱动系统供应商西门子携手中国主要汽车制造商之一北京汽车集团有限公司(以下简称“北汽”胜利签署协议,双方组建合资公司—北京西门子汽车电驱动系统有限公司”共促中国新能源汽车驱动技术发展。

ABB案例分析:MTS数据中心

ABB案例分析:MTS数据中心的安全断电保护

ABB案例分析:ENFO选择DP

温馨提示:文章“ABB案例分析:ENFO选择DPA的绿色数据中心”由丙通MRO编辑

ABB案例分析:注定要保护

ABB案例分析:注定要保护和服务使用UPS

ABB案例分析:Dachser pr

ABB UPS系统包括带有独立的电源模块的框架。该模块在很大程度上是自主的,甚至配备了自己的一组电池。所有模块共用的负载,并且该系统的尺寸是这样设计的,如果一个模块发生故障,其余的模块就不会被全部消费者在最大消耗超载。有很多好处这一概念,称为n +1冗余。

ABB案例分析:Power to t

ABB案例分析:Power to the Linet

ABB案例分析:Moresi.Com

ABB案例分析:Moresi.Com SA选择Conceptpower DPA

ABB案例分析:Newave为印

ABB UPS的订单包括: 八酶标仪33的UPS系统,包括冗余(2×80千伏安);30分钟备用电池容量在印度各地的八个机场和所有必需的项目系统运作的每个位置。

ABB案例分析:意大利电信

可持续发展的ABB:对于ABB来说,可持续发展是如何平衡经济成功,环境保护和社会进步,我们所有的利益相关方受益。可持续发展的考虑包括我们如何设计和制造产品,我们为客户提供,我们怎么搞的供应商,我们如何评估风险和机遇,以及我们如何表现我们经营所在的社区,对彼此,同时尽力确保健康,安全并受我们的活动我们的员工,承包商和其他的安全性。

ABB携手客户智慧跨越生产

北京,2014年2月27日——ABB(中国)有限公司2013年订单额及销售收入创历史新高,双双达到56亿美元;全年新增投资1.36亿美元,在华累计投资总额为18亿美元。

食品行业之膨化休闲食品

广州丙通公司多年服务食品行业以及包装行业新老客户专业服务经验,针对客户个例,一站式打包式便捷高效供应工业备品备件。

工业自动化之西门子引领

西门子做为全球闻名的专注于工业化自动化领域的专家,始终引领先进的技术发展,广州丙通优势供应西门子软件。

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

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

2013-01-10

施耐德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/html/CN-28-1058.html


首页 | 技术方案 | 招贤纳士 | MRO目录

Copyright 2008-2011 广州丙通电子元件有限公司 粤ICP备11028760
地址:广州市黄埔区云埔工业区埔南路沧联工业园D栋D02 联系电话:86-20-62958688 传真:86-20-62950613

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