|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
Technique
+ ~& q N" W: I( KUse the Item Class Extended Method set to set a new private Permission for an Item.
& {) @8 [2 d2 o; g bJavaScript
& d4 u/ e; u+ U/ i* s// Set up the Part query
: w) ~4 F. z+ c5 D+ z: M5 {6 Gvar innovator = this.newInnovator();
3 V6 _- d1 A: o) O# |var qryItem = this.newItem("Part", "get"); 3 q* i; A* ]# C
qryItem.setAttribute("select", "id,permission_id");
/ f4 u, p/ d# M W aqryItem.setProperty("item_number", "123-456%", "like"); 3 j1 ~7 `# A$ s) G4 |8 g( S- {. H5 y
+ g) K; i/ d$ g
// Run the query and check for errors
N3 Z0 m1 r" X5 E/ Nvar resultItem = qryItem.apply();
( _/ a% f: E# l6 Q! fif (resultItem.isError()) { 8 [: H$ M. Z9 p" Q9 H5 x/ z/ X
top.aras.AlertError(resultItem.getErrorDetail()); 6 j" B9 r+ x( o/ T, s$ q
return; / ~+ O2 j% M& d& ~
} . S6 b. U. ? ]4 Q! O( E
4 Z# w& u4 y+ V" h
// Iterate over the Items returned and add the private permissions for each.
( G$ X: C2 T) Y0 P# Zvar count = resultItem.getItemCount(); - V. S- x# I( t* X8 z
for (i=0; i<count; ++i) { # \6 V8 \$ p1 Z8 I) N
var item = resultItem.getItemByIndex(i); 2 H& @4 N" O" ]
// Start with a blank permission
# Q' N( `, G. v% i! } var permItem = item.setPrivatePermission(""); + e Z& v: V" A" J; P- i" g Z8 H
// To copy from the current permission: permItem = item.setPrivatePermission(); & T; Z. O' O- p) R
// To copy from a named permission: permItem = item.setPrivatePermission("New Part"); 4 d# W" ~" X# D. c. @6 `
! l7 ?* {/ `6 A* x! {0 g
permItem.setProperty("name", permItem.getID()); / l7 F4 E, y! Y G" E4 i9 h h
permItem.setIdentityAccess("Component Engineering", "get", true); " q, u# ~6 a# T2 T
permItem.setIdentityAccess("CM", "get", true);
& }4 d" D2 Y' L' M permItem.setIdentityAccess("CM", "update", true);
6 x0 V9 u3 q3 ^0 `* J
& |1 B( x9 h/ Z/ ?6 N" p' i, M5 j. j // Grant access to the current user's alias identity
. e/ c* ? v+ G; \% e9 L var aliasId = innovator.getUserAliases().split(',')[0]; ( {9 ?' I. w" [( y
var aliasName = innovator.getItemById("Identity",aliasId).getProperty("name"); : ~2 m7 b* \# N- H6 h
permItem.setIdentityAccess(aliasName, "get", true); 5 `; ^. y0 `% x4 L
7 b# b; i" B9 _3 w; G, N% M
item.setAction("edit"); 1 z4 P+ e1 e' L/ I# u/ d
resultItem = item.apply();
, H9 L4 _ `7 t0 _9 K0 z* K if (resultItem.isError()) { top.aras.AlertError(resultItem.getErrorDetail()); } ( t; w K6 E9 c: e! A5 u
} 0 U4 S, V, j% O5 P1 k4 `- W6 `
8 _$ E/ G. p5 ?8 o* T
|
|