PLM之家PLMHome-国产软件践行者

【Aras 二次开发代码】为对象Item设置私有权限

[复制链接]

2018-8-1 13:56:44 2080 0

admin 发表于 2018-8-1 13:56:44 |阅读模式

admin 楼主

2018-8-1 13:56:44

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
Technique  
1 |, `. x1 p- C: m* \Use the Item Class Extended Method set to set a new private Permission for an Item.
1 ?) m% J) |- T+ }- }. jJavaScript  
1 E4 i8 D' s8 Q" b) y7 H// Set up the Part query
9 g& u! G) k1 B0 z  \$ cvar innovator = this.newInnovator();
3 W7 |( }9 z) ~' W8 ]" H( Wvar qryItem = this.newItem("Part", "get");
% v! B2 T+ z8 y) w- XqryItem.setAttribute("select", "id,permission_id"); + Q8 Z: r8 B0 ~
qryItem.setProperty("item_number", "123-456%", "like");
- x9 I/ k& k7 K5 h3 _; t, t* ^! a
# F: @6 d9 `% E// Run the query and check for errors
. B0 l2 V" H8 C6 B" s5 ]var resultItem = qryItem.apply(); , i& S1 E1 r# y2 n  ]$ y" y6 K* M
if (resultItem.isError()) { , N: l2 a8 F  X: U; x
top.aras.AlertError(resultItem.getErrorDetail());
. _& @! K: L8 _9 ?1 E9 B$ S return;   t* ?; x9 h+ N* [. ]) |2 k) _
} 2 J: S+ G+ M) m/ K# N4 P

" ^9 G5 X% H" i9 M// Iterate over the Items returned and add the private permissions for each. 7 g4 b- m4 L0 s7 K9 M1 z0 {
var count = resultItem.getItemCount(); # g7 f! ~- P, ^
for (i=0; i<count; ++i) {
9 I1 c6 c$ l* z# Q, L' ^3 P: B1 M( p2 W var item = resultItem.getItemByIndex(i); * s; i  o* g# N$ x8 C, O( u
// Start with a blank permission * b+ P4 _6 N8 m' z
var permItem = item.setPrivatePermission(""); 1 T4 ~7 v! y' g. F
// To copy from the current permission: permItem = item.setPrivatePermission(); 3 [* E; f$ q) E) ~# E' s  V
// To copy from a named permission: permItem = item.setPrivatePermission("New Part");
/ H+ ?7 W& \. e6 ?, l3 h2 h1 K
3 N* U' Y- j% H) z permItem.setProperty("name", permItem.getID());
( v9 z* q  f2 d/ F$ Y. A permItem.setIdentityAccess("Component Engineering", "get", true);
; Z9 M8 d% R8 r, I( w5 | permItem.setIdentityAccess("CM", "get", true);
# D/ l8 p' B  Y  W4 q permItem.setIdentityAccess("CM", "update", true); 1 S0 j) g  y3 c2 x0 x+ o; E
7 D+ m8 z0 b6 `. d. r
// Grant access to the current user's alias identity
; p9 @9 ]; q7 D9 c+ `! F var aliasId = innovator.getUserAliases().split(',')[0];
: l; ^' s1 e) @1 Q1 n4 Y7 o var aliasName = innovator.getItemById("Identity",aliasId).getProperty("name");
; D" F7 x: O" P permItem.setIdentityAccess(aliasName, "get", true);   u( q- L' w3 Q0 \

  w, O  j) K0 X3 \  U7 L item.setAction("edit");
3 K% o3 Z4 c) d9 J$ f8 ^  K, R resultItem = item.apply(); ( b& w' E7 B& w6 F
if (resultItem.isError()) { top.aras.AlertError(resultItem.getErrorDetail()); }
9 M' n* B! |0 S: J2 f/ B$ e- O} , x% v; g' W7 F" |3 H
9 g( \( z- }. _# y) N3 K  A; r
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了