请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
×
123.怎样批量进行组织结构的本地化? % d& N, E% O6 b1 K
9 N5 _& Y: y& A* v( J问题: ' J( S1 g6 A5 R& P/ K8 k* w
通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管; Z7 D* A% Y/ y
+ C. D4 j& i& _; v. o9 L- Z理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大, 0 g' Z0 Q' o- ~) ~0 K @/ C
并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法?
2 q5 j$ u! e. F软、硬件环境: + g4 X) U; ^) C3 o+ u" u! O
平台 : na
& x, h7 I* O! V1 H
7 x+ `& s4 w+ Y3 ]" C& X( }- r4 POS : n/a ' T% N7 Z1 h1 G9 V* f* o# s$ o. J
OS版本: n/a 3 k0 t! f) g3 P' s2 Q" Q" V
/ N/ z1 K0 O f+ G- q应用: 组织
& d$ b# L5 s* i版本: V10.1.0及以上 0 E+ u. I% _) B1 J
" o7 ]3 P" T( [解决方法: : B- K! l: ^5 t! X2 H8 h
以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
' }: a/ m9 g) d& M其它语言类似。
5 G0 v# G# A6 S5 F
! z2 l+ D( v4 r/ ]2 U1.使用下面的语句创建一些组织结构,组和角色 4 B4 C$ b. U' r" i4 }& Y
请把正确的infodba密码提供给-p参数。
; M( H+ F) e6 K0 ?
5 H0 ]; H4 [( @" fmake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
: ] s: G. \# k) qmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01
" E( x3 ?9 }/ Zmake_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01
" Y/ Z. `2 r4 q7 mmake_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02 1 w& a( h \3 B$ k& A
make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
; J R- Q: C, smake_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02
$ a1 c m6 C9 [make_user -u=infodba -p=1234567890 -g=dba -role=Tester
7 c1 K5 ?& Y/ o& j: X) `make_user -u=infodba -p=1234567890 -g=dba -role=QAEng * \8 c2 [) @% b7 w9 h
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
7 P- P" K6 N& W7 S2登录进入TC,查看组织结构: I) s, s. E4 T' k7 W& c5 P+ u
3 Y/ ^3 _6 I Z
' f J; `- K# T. f8 G6 p. R1 ?8 G
3. 在TCDOS窗口中使用下面的命令导出组和角色 8 w7 U& u( l9 l0 P6 ~
- P6 c J# |' W4 ?2 m, r
导出的文件格式是XML文件。 # a2 V2 Q1 o4 x1 H( _, K
2 L* e( g8 b! U0 E+ l9 `% k
请把正确的infodba密码提供给-p参数。 * D8 T0 Y* x R* n9 l4 V0 K
9 G, Q- V; P! w0 }
/ F8 k2 R. }1 B' [+ m8 H
4.本地化 , v7 q1 x m+ X) C" p- h: ?9 e
4 m6 {& G9 W5 b
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, * }8 N! U% I6 I- `
, G- j! E4 X& u7 }2 c4 p2 e+ `
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
. P( x0 _& ]0 \+ ]% }( ~6 D- T( o3 C% ^5 ?) L$ u* h m4 I
本地化的目标语言代码。
: N& n( L# v0 s* K下面是目标语言的列表 ) a& ^" N# i6 M/ V2 v
% c' n2 n4 s" u! X! \+ U目标语言代码目标语言
2 z+ S' G6 a2 s: S' a0 p- N. Q" {! J. M
cs_CZ 捷克语
8 A" F9 u) K4 y5 W6 i0 }2 k1 j& o
& l! K2 u9 u8 L1 o' g: Ode_DE 德语
0 |3 U/ u$ K1 {) S V, O: T1 I& {- U4 Q; C" ?3 d
en_US 英语
0 H* |0 J! t6 P/ S; c4 z c2 F( p! ?3 f8 i% v: s' F
es_ES 西班牙语
$ B: p5 r! d/ o+ M) g7 u0 e' _6 @5 T: q1 M5 n
fr_FR 法语 % O" w( ~4 ~+ t# b
* C$ T$ l- w2 @
it_IT 意大利语 " \! D0 `+ r) O% F- q6 i
* n( q" V$ }. c1 @$ P) ^, @& z0 a0 |ja_JP 日语 ^0 M1 A# T0 L% Q
7 o6 n& c! l2 _3 V ?* X* M+ z
ko_KR 韩语 " l A: o# [& T6 K& l5 X
2 \1 R6 `) g9 m F0 I8 Fpl_PL 波兰语
2 m3 ]! v2 Q+ v' t2 e
7 ~* V* S& H4 U; ^/ ~6 ept_BR 巴西葡萄牙语
4 F6 W7 f' p0 f1 L+ @8 e8 M/ e7 u ~% q* Z2 q( P! a! L
ru_RU 俄语 * `4 `) w' }7 n4 w1 R
1 n0 f) o- o- q6 e2 L
zh_CN 简体中文
$ H$ X* `& q* M; F* n" i! M# I' W# ^# I$ S, p7 G: x
zh_TW 繁体中文 - c! {3 Z6 j) i$ d
- a# B9 D* j9 `3 X r( S7 i
注: ; D) X9 a9 D% V; V/ f; C; m+ _( A1 f
6 R4 v7 v+ g3 I# q) c Q7 _9 ]
根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后 " @* k% l7 N% r3 L
z( Q1 ?, M0 M: e的对应名称在下面的属性对之间进行修改。
# Q* X$ W4 G N# S2 a# k( s/ w n Z
' L9 c# Y" Y+ p6 \
<LocalizedValue> X6 q7 U: r, l$ D+ g' U5 H
</LocalizedValue>
' y' \- `; I- N$ C' _/ g& d" n注: % U. F& s, k# s1 q! H3 z) f+ `; k
9 q' p* S& Q3 a% d5 k- Z. ?3 |" o
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 + `* w+ K; ]% w8 N
) b* z7 x- p% c
对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对
9 C% ^2 z+ A4 [9 W7 _; z% S1 p2 k
" E+ w- s2 P2 z, V; X里面的:
6 ~/ W4 J6 ~% v4 O" o- g, z/ K2 |2 w4 F8 H, _
/ B: l5 E. h: i: s
<ObjectInstance> ; e- Q/ V% e7 }, {$ o
</ObjectInstance>
# D, d# d9 W: A1 K: c h- q6 U9 t请注意保证XML格式的正确性。
# U+ l; P: V o组的本地化修改的例子: % Y( f& ]( T4 q( }- I% ^. e
. U+ c" Q; H7 x* e$ X% C5 F! H
+ b3 V% F) P$ G. {6 ^" n
8 k g. L8 ^3 c! P% D) D<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> + C# X3 c# w# u$ J
<Property propertyName="name" masterLocale="en_US">
2 j% o7 y+ k f/ D- \ M<Value index="0"> 0 X2 [ S/ L" V+ B9 X- [! H% I
<MasterValue> 9 c. p: Y) P6 S: P! u7 i: k9 k
dba ( ?/ H$ G6 {4 B# i B% _6 |, }
</MasterValue>
2 @- S! B2 G' i; t0 R* u<LocalizedValue> - V9 |8 D0 X2 P
dba 2 U! \, ]* K0 o
</LocalizedValue> 1 D5 P/ g4 b3 `
</Value> , u, c! v8 o. X( f1 B5 ~
</Property> 7 _, }4 ]3 J4 U
</ObjectInstance>
X6 r9 j( P4 {2 Z* S- A0 j# [: ~! G<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
; ^" d; T# ?. L& M1 u! Z<Property propertyName="name" masterLocale="en_US"> 8 X+ e" ^# @6 q
<Value index="0"> 9 u0 h& P, h. W8 r6 C* z7 T
<MasterValue>
/ O5 c) U! X4 Z& e$ @" UGF02 9 f% p# i+ D" j% Y1 d/ r- Z+ B- G
</MasterValue>
; J7 s/ N) O# `/ x8 g<LocalizedValue>
9 Q4 n6 I( N8 q+ s3 g& b0 X2 I: U: o' H2 I' F h+ R" \' u T
工艺02
( _: y! {8 X1 V8 e3 P# z& A$ H' v* J* k" O8 q. o2 q4 R
4 ]/ j( g0 c- U' j4 R( o# L) ~
</LocalizedValue>
7 o0 Z% }7 U+ R6 v6 _ H2 ?</Value> $ C1 s* f7 B' f6 \: G# ]; T% Z8 v# |
</Property>
7 J& l6 \4 ?2 z; p</ObjectInstance> 9 a5 `3 N& J: U2 o- j& d( B
, a5 i9 ~) G1 ?角色的本地化修改的例子: * Q) U2 m ]0 R7 ^# \% A7 N5 U
' G4 ?0 x5 }, i9 B & h% V2 `: T3 f1 r: ]
& i# c! o# X* x5 d# a4 h+ Y
r6 e! ^2 z! e0 k! e( B1 h n
9 A6 ?1 a) i) c7 @5 L# }2 g( i+ [<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> 5 l. x$ S V; J% ^0 d1 `6 i5 d
<Property propertyName="role_name" masterLocale="en_US"> : J2 G( @* J3 L" ?4 p4 [
<Value index="0"> % C& Y2 M6 Q$ {: c
<MasterValue>
; q# S9 y ?8 e' M: v& E1 V* QDBA 7 o4 c0 @* E' r1 ?0 a5 D8 T( n
</MasterValue> 7 Y) }( G! D: n$ _' H! f( T
<LocalizedValue>
: z0 Y! M1 j, T3 HDBA ; z7 E% i) \) b ^( {- G
</LocalizedValue> 0 u/ t5 i; d; ?: k, _, P) Z
</Value> $ C. c: z0 i3 } H2 h6 d" J
</Property> - r& F, `% M! a2 V# L
</ObjectInstance> % i7 W. o3 ?# i! p
<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB">
3 X4 Q" f+ H( J% f' a<Property propertyName="role_name" masterLocale="en_US"> 0 @) ^6 ^+ r& [& @
<Value index="0"> 2 L9 q/ c. c' r3 h$ |( u; {
<MasterValue> + J" Z" o- f. W+ j. B
Tester
8 T. M% J# n9 |0 L</MasterValue>
6 p+ X# Z0 d) @1 F- M" g<LocalizedValue>
0 @& [! d5 V2 C+ o" A- R* N% d8 X/ ?( Z5 q: o
测试员 , E) G$ Z3 ]: T- M, J4 q7 b+ k
9 d) p: \* s: i* K
9 v6 F% e1 f% |, }& u
. }2 X" p+ @! w) t/ I$ u</LocalizedValue> 5 a" P; y4 |3 U
</Value>
0 Z5 _* Y @* [; L</Property>
! q$ L+ u5 C+ M</ObjectInstance>
: G$ o( T) x5 W- B) R: n
+ ^' y9 H5 E7 o( H
& o* E, i" Z/ l* M* A
/ ?3 F. _. i9 Z5 I
' H) L' `/ h7 R% O& l% V
" s* @2 `6 K: n* R, e* ]# r9 x' J h2 M F
2 F7 q2 r: O l保存文件.
/ k- |; Y9 `$ F4 E7 T3 l$ {& G% ?0 O1 x3 L
5.导入本地化
- F$ z7 |5 K Z/ U& D7 g/ a7 G6 ]9 c" F: n4 {5 z; t/ `# S$ y
在 TCDOS窗口中进行导入 " @& n r+ `$ o+ c2 J
6 G( n- M% J) c6 K* X
; s- t, S# E! _" U
请把正确的infodba密码提供给-p参数。: k$ V) K9 o% `; V; f, A1 O
6检查 7 W& j- t$ K) {) v
1 E/ J: ?$ z9 D# P' a0 a用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称" v4 A ?9 z) ~$ ]3 U1 n
1 O! e! `6 P( d8 {
& S! Z0 X5 K, d; j/ X3 I9 n2 J- Q w" F4 c0 [1 |4 n+ y
$ o* Y' O7 ^9 e. l |