|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, P1 Y5 K0 V9 y
171. 更改运行调度程序的操作系统用户后,populatefsc 中止在 TRANSLATIN状态 3 e, Y% r4 H+ z/ ~- q
4 r& u- w, X7 \: I; X& w) [% A
问题
6 o7 y8 r) R( T1 Y默认情况下,该模块使用 2 层的自动登录,如果操作系统用户不是 Teamcenter 用户,该9 g9 G5 I/ P3 ~5 F! M
模块中的功能无法登录
p% i7 O4 j5 m$ G, y8 V
7 _- D- I" A, a. c9 O1 dERROR - 2018/11/29-10:51:46.962 UTC - NoId - 515143: The login attempt failed: either the " X6 z6 F2 S- g; }. [. _7 G
user ID or the password is invalid. ; N( u0 P/ }$ X+ N9 E3 U; A
" m+ c: z k1 V9 N [7 X
方法
6 k+ J# m/ S9 M修改 populatefsc 脚本,增加登录信息 % m" [/ ?! F/ }+ u$ q% R! _8 Z. O% j7 ^
在 populatefsc.bat 文件中,在 TC_ROOT 和 TC_DATA 的设定后增加如下行
7 N8 C% }0 l! O* c6 B$ Hset TC_DBA_USER=infodba
0 r6 H/ \+ Q, c+ M2 m, T ~( _5 t: n- M' O, P; X2 ]9 j
在 populatefsc.pl 中 : . R* f4 F6 J8 t- r& l& W$ I
" L: Z& ?" T; `0 c3 Q3 t3 i9 w在 runPLMXMLExport 子程序下增加红色标记的代码 % j6 ]0 V; F+ j0 g
6 W h& t1 e P/ J6 l7 g
# This will be the full path to the executable.
' T, p' S! ^: d; y# X. S( ]" kmy $exe_path= "$ENV{'TC_BIN'}${dir_separator}${exe_name}${exe_suffix}";
. c' R7 f: C: t3 D% u0 ]my $tcdbauser= "$ENV{'TC_DBA_USER'}"; 4 Q( {6 _) x& V3 B' y8 B7 L# s8 G
my $pwdfile= "$ENV{'TC_ROOT'}${dir_separator}security${dir_separator}server_infodba.pwf";
5 J$ ^! t+ m6 T' m- N& W H7 Z# Make sure we can find what we are executing. 4 ^: c K& M2 ?4 q0 l" D! L
die "The ${exe_name} executable was not found at the following location: , F( u3 _$ Y w$ n
${exe_path}\n" unless -x ${exe_path};
( V0 u0 X/ T8 W- y
' Z# b' v& h1 j# Start building the command line. - V9 g$ Q1 @, t9 M; X
my @args= ( $exe_path, '-transfermode=ConfiguredDataExportDefault' );
& U7 z4 u8 e* ?4 R. u: f: ]/ o) G! d& h
# Take care of possible empty spaces in the argument values
3 x* D p7 e8 {$ Mmy $outputFileStr = $hashRef->{'output_file'}; ( @, Q% |0 n) t3 | {
$outputFileStr = handleEmptySpaceInPath($outputFileStr);
3 l6 C c/ p/ i7 x* E4 Fmy $scoUid = $hashRef->{'uid'}; 7 d7 a! [( h$ s9 \5 c" e
$scoUid = handleEmptySpaceInPath($scoUid);
9 i8 C" y4 {' Y4 }* n1 K
7 e3 s+ a" n. s5 S6 a# Add the extra options.
5 g1 ]- Q+ _5 c7 _6 WaddOption(\@args, '-xml_file=', $outputFileStr, 1); A6 A5 o' m9 a" N2 h
addOption(\@args, '-uid=', $scoUid, 1);
4 w! r r/ g+ GaddOption(\@args, '-u=', $tcdbauser, 1);
' O7 e3 d% M' O3 y W' K WaddOption(\@args, '-pf=', $pwdfile, 1);
5 b X5 H9 q& e2 E$ C `5 G J7 F* f2 f8 t: C2 q: |& l0 k7 J; O
在 runLoadFscCache 子程序下增加红色标记的代码 % x# l6 X! B5 g0 r. {* H* N
# y' }+ t' e" E; d* o$ t6 A# This will be the full path to the executable.
/ C+ E+ u: b0 Y2 {3 a% ~my $exe_path= "$ENV{'TC_BIN'}${dir_separator}${exe_name}${exe_suffix}";
% g$ |3 ]0 E3 y% |4 B$ Y5 j, A) A( o0 ]
my $tcdbauser= "$ENV{'TC_DBA_USER'}"; * b, o/ j, `0 y) P0 l5 u2 m' k
my $pwdfile= "$ENV{'TC_ROOT'}${dir_separator}security${dir_separator}server_infodba.pwf";
. b5 ~+ ]; u% D$ F0 n8 B8 g5 ^# Make sure we can find what we are executing.
6 x; x' _( ]" T. Edie "The ${exe_name} executable was not found at the following location:
8 a1 R" S, W+ P/ {" I${exe_path}\n" unless -x ${exe_path};
, \$ X4 X- u8 g7 r) e5 U% }3 n3 Y& }1 P3 e
# Figure out output information from command line input
1 r& G2 s# Q& }- {8 rmy $outputFileStr = $hashRef->{'output_file'};
7 _) B+ W1 ]2 zmy $fscUri = $hashRef->{'targets'}; ) M( S) Z3 B; L6 y! I( W6 h: g
# V0 b# @6 W* Q% [; M6 y9 v2 N
# Check possible empty space in the string " M; L7 O% T; M6 y# J! Z3 T/ Z
$outputFileStr= handleEmptySpaceInPath($outputFileStr); : u; U. l2 `- j' q
$fscUri = handleEmptySpaceInPath($fscUri); ! b* v7 G5 `; i9 p1 c- e; v' o& X
8 l% t$ f9 n6 R7 r# Add the extra options.
) j, U8 o8 Q/ I/ V( U: r( b ]my @args= ( $exe_path, '-f=load' ); $ S% S! M, p* d6 I4 O' U4 j q
addOption(\@args, '-plmxml=', $outputFileStr, 1); 9 G ?: }: O2 M" h P
addOption(\@args, '-fsctargets=', $fscUri, 1); ! E+ v+ P. R: v! }
addOption(\@args, '-u=', $tcdbauser, 1);
7 z! y j/ C6 _) \# z- M jaddOption(\@args, '-pf=', $pwdfile, 1);
( j4 j) t. n' y4 r# z! I5 R, g" Z, K
$ ^; o4 [; V: }+ Z( E5 j) S
0 M. b/ j9 h( j5 B% F4 ~( S( U |
|