上善若水
愿倾其毕生之功,高扬.NET旗帜
1.获取当前用户的方法
在类型脚本中,客户端脚本通过this.ClientSession.UserID获取,服务端脚本通过this.UserID获取

而在Web的二次开发中,客户端脚本通过mw.PortalClass 类来获取
下面看看mw.PortalClass 类
//获取当前用户信息(mw.businesslogic.BusinessUser 类)
mw.PortalClass.currentUser 属性

而mw.businesslogic.BusinessUser 类包含下面信息:
//获取此用户的全局唯一标识
mw.businesslogic.BusinessUser.id 属性
//获取此用户的名称
mw.businesslogic.BusinessUser.name 属性

在服务端需要注意,如果在WebView视图中取用户信息,需要默认的继承对象UserControl改为WebView
同样可以通过Portal对象获取相关信息,比如:Portal.Current.User.Name


2.在企业部门-企业人员对象树中获取企业人员所在的部门
下面示例在类型的服务器脚本实现
sql=string.Format("select deps.mc from mw_sys.mwt_pd_emps emps,mw_sys.mwt_pd_deps deps,mwt_om_link l where emps.obj_id=l.tgt_obj_id and l.src_obj_id=deps.obj_id and emps.sysuserid='{0}'",UserID);
string bm = (string)DataAccessService.ExecuteScalar(sql);
   
if(bm!= null)
    p_bd[
"ZLBM"= bm;
else
    p_bd[
"ZLBM"= "未知部门";

3.获取角色的所属用户
select HM from mw_app.PM_NW_ZH_CLGLJL
 
 select role_id from MWT_SM_ROLE where role_name='[总调]-驾驶员'
 
 select MWT_IS_USER.USER_NAME
   from MWT_SM_ROLEUSER, MWT_SM_ROLE,MWT_IS_USER
  where MWT_SM_ROLE.Role_Id = MWT_SM_ROLEUSER.Role_Id
    and MWT_IS_USER.User_Id = MWT_SM_ROLEUSER.User_Id
    and MWT_SM_ROLE.Role_ID = 'BDB78B8B-C8AA-4E41-8A70-068862D2C784'

posted on 2007-06-30 13:26  小兔快跑  阅读(157)  评论(0编辑  收藏  举报