|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
, w$ p3 Q M- Q' M R& I) ?171. 更改运行调度程序的操作系统用户后,populatefsc 中止在 TRANSLATIN状态 ( R# R- C$ B! }% m3 ? k
2 R" D. Q8 e8 m( {" \
问题
% d) t* K% o( r) C+ r默认情况下,该模块使用 2 层的自动登录,如果操作系统用户不是 Teamcenter 用户,该
: ~. ?5 B% }; j, J9 p模块中的功能无法登录
( i$ p4 z9 m. o/ \3 ~6 h+ S8 L: d8 L1 l9 {7 n+ t6 @
ERROR - 2018/11/29-10:51:46.962 UTC - NoId - 515143: The login attempt failed: either the / c2 [6 N. N9 H! Z
user ID or the password is invalid.
8 ^. Z- {7 @( x! k2 R/ ~+ J: }/ g5 K0 j* H
方法
+ F1 q( x$ H- c# I修改 populatefsc 脚本,增加登录信息
3 V5 E! k) e+ _6 B8 k在 populatefsc.bat 文件中,在 TC_ROOT 和 TC_DATA 的设定后增加如下行 * I* q' r- s' C
set TC_DBA_USER=infodba
/ X: ~% x M! t! w1 X0 b1 r+ }7 j5 P' P
7 Z p$ E) g6 a+ S在 populatefsc.pl 中 : 8 J9 n' Y# x( |0 e
. k$ W7 w" ^. u( v/ _6 m8 |在 runPLMXMLExport 子程序下增加红色标记的代码
0 U0 e. a6 H' W7 Y4 I+ K5 m' W% P k7 N
# This will be the full path to the executable.
& Y; |5 ]" P5 \! K0 E: P6 E; D& j* omy $exe_path= "$ENV{'TC_BIN'}${dir_separator}${exe_name}${exe_suffix}";
+ K$ C: s" B: o9 [2 B" P2 A5 @" mmy $tcdbauser= "$ENV{'TC_DBA_USER'}"; ; j4 q5 A, l! `$ m" ~: A& ]- A
my $pwdfile= "$ENV{'TC_ROOT'}${dir_separator}security${dir_separator}server_infodba.pwf"; % x$ g! O, o% H6 F7 \
# Make sure we can find what we are executing. % C' Q$ h) ]( p+ b3 g0 e2 ~/ I
die "The ${exe_name} executable was not found at the following location:
" ^$ l t4 r5 s) s' @( S) I) M! W2 s1 }${exe_path}\n" unless -x ${exe_path};
6 X: I5 b- a# t5 k+ o# u
3 n0 D V* Z4 _- J8 u6 g4 |# y# Start building the command line. - ?0 S. r6 w4 P, N- u) @
my @args= ( $exe_path, '-transfermode=ConfiguredDataExportDefault' );
/ w5 I1 m7 n3 N) M, @6 q
9 H5 f# d, G3 L+ e3 E$ a# Take care of possible empty spaces in the argument values
, f; [* F2 r1 W7 J: M1 ~* cmy $outputFileStr = $hashRef->{'output_file'}; ) O1 w# B1 N) p& \6 N
$outputFileStr = handleEmptySpaceInPath($outputFileStr); , j8 x/ A! ?' ]+ z* R. z
my $scoUid = $hashRef->{'uid'}; ! O/ Z! {3 }7 o& C/ ^2 o# x5 _
$scoUid = handleEmptySpaceInPath($scoUid);
& A/ p- a" ~6 K
8 V5 a) L+ a; }4 t1 a0 V- P' g# Add the extra options.
8 W( G0 Y8 ?* {$ ~. V9 n+ YaddOption(\@args, '-xml_file=', $outputFileStr, 1);
- {0 z! G% y( R6 c$ _& |, n' B+ vaddOption(\@args, '-uid=', $scoUid, 1);
/ I6 w, Y) G5 f" O/ baddOption(\@args, '-u=', $tcdbauser, 1); m" l& n8 v3 }! T2 \
addOption(\@args, '-pf=', $pwdfile, 1);
7 M: e" F$ G/ q/ }/ J% V( I0 p3 p6 M" ^" i/ _, v
在 runLoadFscCache 子程序下增加红色标记的代码
+ S5 s7 O N- s1 B3 e6 Y# Y' u% `
# This will be the full path to the executable. 4 {8 O: Y6 A$ _5 g
my $exe_path= "$ENV{'TC_BIN'}${dir_separator}${exe_name}${exe_suffix}";
# [; T* d! [ I: B; V0 o, l4 x3 W3 l" I! W
my $tcdbauser= "$ENV{'TC_DBA_USER'}";
. T* O$ p; K1 k3 Q# H' Mmy $pwdfile= "$ENV{'TC_ROOT'}${dir_separator}security${dir_separator}server_infodba.pwf"; 6 t+ o! O- I+ H6 k* G' ^
# Make sure we can find what we are executing.
" J, u) o8 q: x3 U% V* Edie "The ${exe_name} executable was not found at the following location:
0 D, K7 n# B% F% t `${exe_path}\n" unless -x ${exe_path};
/ j0 x/ K! c( L# k/ j, L% Q) n D9 W* |& c, b( x9 @0 ^: s3 Y
# Figure out output information from command line input
, |) @6 X! f) t" Cmy $outputFileStr = $hashRef->{'output_file'}; 1 h, z) p/ ]! n2 i* O
my $fscUri = $hashRef->{'targets'}; 5 Y6 L0 j4 J3 N6 t0 j: s8 ?
; f1 n6 W' d( n& ?# Check possible empty space in the string
6 \0 ~( I# e4 E4 O" @$outputFileStr= handleEmptySpaceInPath($outputFileStr); ) c( B1 @6 ^- B6 v0 P, ]9 x5 r# J
$fscUri = handleEmptySpaceInPath($fscUri);
/ B/ \3 M3 p. Z2 H1 p2 k' z+ {% m
; r$ B/ _" U8 \: U B3 s# F* r% x# Add the extra options.
; j/ x9 E5 P/ W, Z: Q7 n9 t! Emy @args= ( $exe_path, '-f=load' );
Y* T8 Y7 N7 ?- e; y1 w3 ZaddOption(\@args, '-plmxml=', $outputFileStr, 1); $ X1 n0 |( Z6 ]% z N
addOption(\@args, '-fsctargets=', $fscUri, 1); ) n$ e2 d1 H$ X' Z4 ~
addOption(\@args, '-u=', $tcdbauser, 1);
, v- |+ L, V3 P+ }addOption(\@args, '-pf=', $pwdfile, 1); / d R6 o4 @9 E* _
3 a- P( a. A3 o) M
5 r' a+ @$ o' h2 n% z2 m" [
f4 _7 y/ S' P0 L* r) m |
|