请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
9 k- n5 A8 }1 i7 p$ t! [8 k2 J, b7 k: J& `$ x; b
问题: " A% E2 u6 O: _3 k. N- Z; {& d" M$ r) r
通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管' _; c" N( K1 H3 G% i
. `2 G1 w- a9 @7 C
理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大, 9 H. V! u* L) ]& i4 R
并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法? + w6 o. ^4 h% x8 W$ c2 S1 u) I& d' i
软、硬件环境:
1 b% @' ^5 y' o# f平台 : na
9 c& j! K: @/ m7 K' b: n
4 l" |6 |$ \( @6 s# i+ a1 X/ UOS : n/a
8 E: K2 q W0 M0 }7 N( [OS版本: n/a $ u0 b2 E |5 p$ j
. q; n, k$ W1 b$ n' l: v/ Q
应用: 组织
9 l9 b( `( N8 ^2 @; o4 z( u$ T版本: V10.1.0及以上
6 a# ]1 G! t; V k2 w i; p- t! G. l6 X+ E: T: r* t2 S
解决方法:
+ V& p& N+ ~6 O. A8 {& \- N以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程, 0 l. v+ O1 v4 V0 Q+ k
其它语言类似。
7 |, G5 t) T' w- W. ~1 @, y' d ) _0 @# ] ]! _7 }5 f8 }, S
1.使用下面的语句创建一些组织结构,组和角色 0 o( G2 x- k: M* k9 L8 M; `8 x
请把正确的infodba密码提供给-p参数。 ) y0 G' u: e- y3 f% _& ~9 V+ `( G+ x
0 ]7 z3 A3 |4 o9 |* j7 C* j/ R6 v
make_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
r' p8 S5 @8 O. P$ I4 l/ l* dmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01 2 S" e' I& i g0 e
make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01
' P6 Y8 k) E3 Z1 a8 Q& `make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02 0 l8 Y( z) s7 i
make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
" h0 z5 i% h. S! }; `make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02 # C) a1 J0 x7 H
make_user -u=infodba -p=1234567890 -g=dba -role=Tester 0 d) q2 h( d8 d
make_user -u=infodba -p=1234567890 -g=dba -role=QAEng " m! X$ @( J0 b( G) M" `
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
7 B% T" j, k6 M K" Z/ {) y2登录进入TC,查看组织结构' {. ]; ^. K: p1 q& |$ I: T
! L; u* d- Q5 `& X. P
k( l* i' [6 e$ z3. 在TCDOS窗口中使用下面的命令导出组和角色 5 g! _+ N, S, ?5 ]- F8 O6 f
9 S; s, S! z# ^3 x
导出的文件格式是XML文件。
4 M' j+ R# R, J+ V8 P/ N Y K$ e% l8 N$ b9 _
请把正确的infodba密码提供给-p参数。 8 x' C( _: y: Q$ M4 I
2 M6 v7 C5 r3 G0 `, }( D, q; N' e
8 l% |! x4 o" J) U7 s! Y. Q! X* \, E
4.本地化 1 c& s3 n# m1 @* H( d
( L5 B5 L1 a% y5 @
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml,
6 V1 s& E/ O: ~
# N% d- v7 }3 m, @5 C' o) ?用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
9 N6 L5 ^" \* k, r
# u; N9 C0 y9 P" N5 H! L本地化的目标语言代码。! h0 y: L4 v+ ~; f4 F5 H
下面是目标语言的列表 % ^( l; X2 h% H6 d/ c9 n8 R* U
/ n4 g: O( H8 g7 J/ v
目标语言代码目标语言
2 D8 J/ }. w: s% F/ [% Y8 @* r, L4 e3 y' W; Z
cs_CZ 捷克语
2 h# u, x; ~# `8 S5 l+ @% Z' s9 H3 d' e
de_DE 德语
) ?9 q) T3 i0 g/ ], ?
6 M5 {; f+ [; w$ Men_US 英语
/ P/ L: J% _( l9 k+ r3 }: l( I' S7 e0 F |0 D! M
es_ES 西班牙语
; z _% F2 I6 c
0 w6 U6 c y/ i/ Cfr_FR 法语
$ g; w# b$ n r& K; V p0 @1 |( ^+ z
$ w2 l, I: [2 B- W2 x+ \it_IT 意大利语 8 _2 t3 @# i& J" n* I) H
# I" p$ D! m1 W9 R N5 N! fja_JP 日语 " m9 }2 R4 P" W5 X9 t" x
7 U0 }! T7 t; a5 iko_KR 韩语
4 I7 x' e" ~% S$ [" o6 S% H B: {+ t2 `9 j, \( T) z
pl_PL 波兰语 0 l- n3 {- J8 G) K% E1 y
' m* Q$ ~: L. R Mpt_BR 巴西葡萄牙语
! G' l6 J' o8 I& e, N5 S1 c) p1 t. e! k, T. H$ y' ?4 H
ru_RU 俄语
& w/ J9 F( a( i5 z/ E: |- s
9 o& E2 m. g" B2 U" h9 Bzh_CN 简体中文
: A# X5 J* M* C( g* D q7 }+ U) ^7 {0 Q% R" K _6 W0 z* c
zh_TW 繁体中文
' c3 o4 A2 `& Y2 m" y' J
: `9 p+ P+ f& M( h' I3 ~注:
& n# ]6 O- M- G( u% e! ]
' U+ e, d$ _: S5 A根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后
- ^* H' w7 x6 b% j7 K5 P7 S$ M! M0 d* M$ A6 R- a
的对应名称在下面的属性对之间进行修改。
. S; n! q, _8 p) z) f, Q7 ?
% Y' S; T+ g& c; x
$ b y J) H9 `& W<LocalizedValue> : n2 w- G/ L$ D. i: d$ X) d* {
</LocalizedValue>
2 ?% m% O& ?2 E: s, S* ~注: ) b' R. [6 p: y8 L% X9 E; l& G
$ v; p( t" ?, g; |
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。
) B5 C, v2 O' t
% K$ U2 [" G' w6 C; h, x1 F对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对
( R3 D3 D0 ~) e3 t8 Y
, J& D% l# C# f8 `! r" }4 V里面的: " \+ N1 R+ V z3 P, H) l! F
+ H# R: x+ }4 H+ d/ |# P
( ~/ q, W- D$ `" {
<ObjectInstance>
. u+ a# v/ d7 o! e</ObjectInstance>
' N& L! v. z0 ]5 {6 s请注意保证XML格式的正确性。
0 g/ G6 R; Z( q' B组的本地化修改的例子:
8 e7 h8 J( y- O \1 R0 r/ U
& s! b. y" l$ C7 |' N+ u* E) C; @2 T5 O+ ?* K
9 y. k0 _. c s6 v<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB">
+ \1 R. B, `% n5 h3 f7 |<Property propertyName="name" masterLocale="en_US">
- d8 y. t, j! G# |<Value index="0"> : k3 [1 U5 h# Z2 ]3 g, \
<MasterValue> % } R. u; N+ \% Y, o3 k% ]
dba
- o2 A, }5 g) K7 _+ n</MasterValue>
$ o( B: S* S3 n5 D; ]2 U% w<LocalizedValue> * Z6 y) ^9 K6 |% l7 e3 e* ^" J
dba ( X" X4 H) A& E0 W
</LocalizedValue>
7 ^( r# Q& z8 x/ E( ]: L8 v8 u</Value> ! e8 ]' ~2 _; l6 m( ^. L! g) t
</Property> - v* j' J# E) Q: a* m0 A
</ObjectInstance> ! E$ e1 N4 v" s& a: ]
<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
9 H+ `9 H9 }7 A+ {3 K' D<Property propertyName="name" masterLocale="en_US"> 8 F: l( r6 }2 D
<Value index="0"> 2 Z+ {/ R& G/ \. K; I, O x% Q) d
<MasterValue>
+ h4 {) i9 h& n! K1 LGF02
2 y, C4 D+ d. u M/ ]" M& y, S</MasterValue>
" l# b1 h* y/ D! q0 J<LocalizedValue>
4 P, a9 t* q+ Z* I3 n' l/ x
0 n: o2 _4 |5 s* r: ]8 ]% e) M工艺02
. i/ x3 U! \6 Y5 ^
% q3 E9 U) Q: O; x5 T5 }. u8 c- L+ W" u2 e. c8 _
</LocalizedValue> 0 {" L% X+ l% R7 y! |
</Value>
( }& l( D% z" S0 [7 ^</Property>
$ G- J8 k, Z) b9 E& \</ObjectInstance>
- l3 `1 B5 p4 o' o- s1 J1 e F, w0 G
角色的本地化修改的例子: 6 F' C) s3 E3 i7 b
3 b3 H v% _1 e* X) T
+ i" n/ M V W2 W2 K
4 h" }4 k5 j) ^3 ^& N) z7 |7 D* D9 l
' l% ?- o4 q' z1 }% y ~$ F- r# W9 \6 W M2 c) L
<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB">
) j! j. R0 E# I0 i& h# p<Property propertyName="role_name" masterLocale="en_US">
: Y% g5 U3 M# r y; S9 W<Value index="0"> ) F5 m0 j) U W9 k! p9 j* f
<MasterValue> / O; ~7 S o( ^; t; h& B
DBA - O, j' Z" }$ }; @( f
</MasterValue>
6 a9 P2 P' g0 g4 ~4 X% C ^<LocalizedValue>
$ ~! l5 H ~% Y1 w9 O0 }DBA 4 d8 v/ z; e- o3 L# s7 ]- r
</LocalizedValue>
3 G$ |; n7 W+ F5 K' ]</Value>
. k7 ] e/ I" N</Property>
. [- j: E+ p+ w8 |0 s7 Z, u. p5 c</ObjectInstance>
# ~" u( h) c1 |5 F( C! a<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB"> & K6 j* b; y0 ^: N! E# e
<Property propertyName="role_name" masterLocale="en_US"> ; z/ k5 T0 G! ]0 S; z" c9 F
<Value index="0"> ! r* A. V6 c a+ x# S) A
<MasterValue> 6 ^' v) W, j) m+ V1 q/ a- m
Tester
# A% M3 i1 a5 M, \$ Y, Y</MasterValue> - R9 X! {) h6 o, a
<LocalizedValue>
+ s% ]1 r" `1 \( D1 y, f& Q3 O1 P) H$ S v
测试员
$ ^2 l/ Q# E- w$ \6 z
) C" {5 h- v# j9 B2 _# [
# N" y0 D2 N: B2 f4 U2 s) Z( R
% s$ }" ^# j' y1 _, j</LocalizedValue> # m: l H0 h. F8 L: A/ b
</Value>
5 b9 k/ Q+ \: {; e</Property>
$ m5 z$ X7 K9 Y( Y</ObjectInstance>
+ G* ]: S+ ^5 `6 Q
" w- f9 k; j9 i9 j
8 o" ]* ^! j2 u" _+ D
f' O1 {7 R: o5 B( h F
! K M& h8 o$ u0 l! R y# F$ c: ], D9 x
. i; G; E% l3 K
% x" x% {$ L, ?6 k8 R1 s保存文件. 2 A' I) \8 N, H) E6 P! d8 u$ B4 c
# t) Q, s G; N! ~5.导入本地化 . g0 w* H, {+ ]# p% D' D0 |$ ^
) l/ b* ?4 M$ j$ R5 ]+ E) x在 TCDOS窗口中进行导入
, r, M) p5 x. A4 H2 g) Z' H
9 u8 O2 n$ [8 w- V' X# b3 y4 `+ O, ^
请把正确的infodba密码提供给-p参数。6 O0 M" c x+ X( a/ W6 K3 k
6检查
. `/ r# D& C5 S2 ?# H9 j M+ \
8 V% _4 _% ^3 @" |用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
% r! h' p* ?; G) ?
+ ^- Y# d# O* F/ o" `
+ p c/ K) q5 L, d) H
2 X# P0 H" F Z `& A2 v; ], X1 A3 o# b
|