请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
" |& M$ u( m! t& r) M, h2 V% t7 y: G8 d6 O4 R
问题: , t8 k: k5 f/ z
通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管
! `9 r4 s' g4 S: p. n1 @0 k i# d& c, D3 S0 Y0 u1 J) S: i
理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
9 h6 R2 N+ o" M6 o& }8 K并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法?
; F2 }* |1 k0 {; E* y软、硬件环境: , v5 }4 v& ?' g: K: n
平台 : na
% S5 `/ G( z' i) f
6 L o) a! j" K$ R$ rOS : n/a 2 i1 p: L$ A6 V; O' ~
OS版本: n/a $ F! T" `- l, ~5 D2 y
% [7 P6 a* S8 Q+ ?
应用: 组织 , p2 E% D" m( ]( H& K3 @6 c
版本: V10.1.0及以上
& {5 M8 }5 g0 m0 d, r
% |0 C o9 T/ _( W! g解决方法:
# T& S9 ?8 g& {- l3 }以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程, 5 F7 `. q% E2 u' z5 u
其它语言类似。
# f H6 {! M! U! H. t1 }
7 M7 u; Y* z4 n. q7 ], H6 P7 c4 N0 x. i1.使用下面的语句创建一些组织结构,组和角色 " E0 f) i) N/ m' `
请把正确的infodba密码提供给-p参数。
; {' [2 U+ Y- F, t( N! O
P3 q/ k h$ d, X5 r& z4 x& tmake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
1 I; Z+ G6 K& N' B, Smake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01 - H# _( v3 B$ P/ R; W. z9 i5 ^
make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01
( h2 |4 @# M5 R" X3 Xmake_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02
0 A4 L9 |; Z" m4 r; \$ ]make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
! r [3 Y) `: ^make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02
3 X, {$ l5 _& pmake_user -u=infodba -p=1234567890 -g=dba -role=Tester 8 ]: u9 o4 d# u. L& e, T% q9 s# c
make_user -u=infodba -p=1234567890 -g=dba -role=QAEng
' O5 q# o, ^% I! U3 S; S# lmake_user -u=infodba -p=1234567890 -g=dba -role=ProdEng" \( S( |& n9 {! R. W" b7 n
2登录进入TC,查看组织结构
) P! u- _1 l% g' x& S7 {
5 A8 c( I/ g3 Y( c& F% G2 R& e
1 x" i6 U1 }; z9 |! z
3. 在TCDOS窗口中使用下面的命令导出组和角色
# R' r X% A% N/ z9 }8 b* s
" s5 e; z; G- I/ r+ ^- W2 x导出的文件格式是XML文件。 6 @0 Q, Q) ]& }) s
; p3 _0 M" l3 e$ T7 l请把正确的infodba密码提供给-p参数。
3 J2 l3 K9 e8 T; y) V0 C0 r
; ]& N3 i4 b# I& n0 D& }* H
. \' M8 L! Q! t) p+ L4.本地化 9 U- Z. f3 n' P1 q1 A
. c1 h/ t$ u% c0 ~+ N3 ^2 H
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, Q9 K0 f9 [( }! E/ w
/ |0 O- q# `+ M2 }用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
" W8 }( l0 F& |) H# `! M. Z
' l6 j( b# T1 ]5 u3 O2 g. _: v本地化的目标语言代码。
/ q. X- R& c2 f" N* J9 o$ I下面是目标语言的列表
/ H! Z3 V6 P' w! f) ?
: W, A# |# T2 w9 k5 I( Y目标语言代码目标语言
( E1 |6 }7 s6 j7 ?- r# _
9 P) a% z, P0 r9 scs_CZ 捷克语
, h$ v* h: [0 U) J$ }) P8 h6 j4 ~! A- ]+ \
de_DE 德语
3 j0 o& w4 o, A' @; }) W0 ?3 {5 a) C F$ k5 e# q
en_US 英语 . M7 s2 S- f8 i2 E+ l- g
* b2 }; K8 q& h- V9 les_ES 西班牙语 ! V" ~; S5 D# `' D. }) _' J
' [2 ?* s% q2 |- N7 Z' \; h
fr_FR 法语
: L, V% J$ y5 F1 `' H' F3 E5 ?# a3 ]
it_IT 意大利语 % {. d) F( t- g$ a
2 d5 q# v( {, [# ^: |
ja_JP 日语
/ E0 N$ [$ ^) B. G) g" R
) ~. V4 n1 @6 v+ \7 b- o" \ko_KR 韩语
3 k3 M8 c# v1 i9 w$ K+ l. O+ ~$ G+ X! Y( x; s4 `4 w
pl_PL 波兰语
8 G. @7 B: T6 M8 {8 R, c0 [) p) q; L) m1 J b& |/ F0 L
pt_BR 巴西葡萄牙语 : e- F0 ?3 J1 ^ R1 A$ L" _
: \, B1 m6 e$ \. ^
ru_RU 俄语 ' V3 B/ h' U4 Q) j$ C
% Z3 E! R, m/ v$ b1 j/ K' c$ s B6 v
zh_CN 简体中文 # k5 s1 [2 \! A) W
6 q. p; L- W" M9 }
zh_TW 繁体中文 ( h, x5 n C( U3 m v
) @3 S5 U' U2 W
注: 5 s% y% s- @3 U% X1 S
$ S6 W' P) e& P' a/ E5 P4 ]) y根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后
& H) j+ `3 Z4 p, j$ a. i) D) T6 g- \) O+ `$ Z% y% y2 L9 M
的对应名称在下面的属性对之间进行修改。
, [: t( F* Q* A- b. E( Q' i/ }% T5 l& q
0 C3 U9 m/ g# Z4 h<LocalizedValue> ) H/ h( b! Z& g/ u# S: X& }; C
</LocalizedValue> % h1 v& R- \( J
注:
2 y' q9 _. x2 i9 m }3 L% H0 N
" | t) M+ P; R* p1 _2 N如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 + m5 b4 t% n$ `5 a- N% d3 u# i; {
4 a" X2 C1 b# j! `对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对
' v2 x, ~9 Y0 d2 D) k: o9 Y6 g1 J! s8 f/ J
里面的:
) f9 p+ b7 |, r
$ u- n3 {( T" b3 O# B# L2 [& ~3 y3 h0 X7 v+ ~
<ObjectInstance> 9 y% N& e# q0 K; Y& @
</ObjectInstance> 8 T8 f- @; P R
请注意保证XML格式的正确性。% c( Y/ s @% s8 J
组的本地化修改的例子: 4 A/ F2 h1 [, P: ]
% b/ x# ?1 @0 B* z" ?- f
. z" e( P8 ^+ R9 l) W6 x( a- |" y: X, u# j% s, _) g
<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> % n- D6 E2 u% [. \# S/ R
<Property propertyName="name" masterLocale="en_US">
8 q$ ~) ?; p6 e& _$ C/ y<Value index="0"> ) ?, }3 p) f1 Y
<MasterValue>
4 _' |4 Z; K% [* g: V0 ]dba , I, O% l/ C% Q$ A. z: t1 B7 m4 m4 L
</MasterValue> 4 w3 R( i8 W3 S8 n1 P& q5 Y
<LocalizedValue> - ^6 o8 u0 X5 z7 T5 s
dba 7 X9 I ]1 Y% l- p
</LocalizedValue>
# S1 l9 q# C- [/ C. \</Value>
; w! [; b3 {+ M$ l</Property> * P& ^8 E. J: F4 G
</ObjectInstance> / X) b+ t. w, @3 y( g
<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
1 z* l1 e' h, b7 w<Property propertyName="name" masterLocale="en_US">
- F' Z& J, ]" J, K W s: k1 U<Value index="0">
( H+ z5 J2 p) n5 _1 Q<MasterValue> , X v& M6 X$ d" k
GF02 5 R# s4 D' e" B% u5 \* [; s+ q8 p
</MasterValue> . o" X# u- v. U2 s, P( i
<LocalizedValue> ! V+ f! E5 E, `: x
" f/ J/ I$ U& p [' W
工艺02 8 n) z* m& g* p
& V* g9 k2 O2 u! z% L# ] ?" `# v* W0 g$ U2 k$ e; p6 A
</LocalizedValue>
4 ~. k& Q9 a* b5 x$ _, v</Value> - X% s' |& i! y
</Property>
+ A# ^& z* F4 F: Y</ObjectInstance> $ p. z6 D9 z) X8 @, p2 |8 @
. i2 ]% q; j, {# ^- b5 E) D角色的本地化修改的例子: 1 ~; s5 w3 j9 g1 e; d5 ^3 R
- A4 a. F- @# h6 q; t 7 v" x( ?9 @$ P
7 v- O9 c. I6 J8 @, m
' C1 r" B" J0 \$ A1 Y7 B
& d4 ^; V4 i, }# d9 C$ T! O<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> 4 }7 D: j' D0 r1 }2 o& x8 P% w& l0 h
<Property propertyName="role_name" masterLocale="en_US"> 1 J. @, R9 l. P; }7 w" g
<Value index="0"> 5 w) \7 |0 m ?' \% G- J/ e
<MasterValue>
) o+ f4 Q9 ]" rDBA ' M% T% a/ k- T9 E
</MasterValue>
3 A; {1 }: A# C# j) v<LocalizedValue>
# d# \6 j( W, D* u) z9 zDBA
1 d# w* B/ `7 S$ Q8 g</LocalizedValue>
. l2 A+ p" S! ~</Value> " S) ^8 I+ t( E+ B- _
</Property> 1 s# u) f/ u5 N% @$ O
</ObjectInstance>
8 \5 Z7 T) [( x( J, {' ~ s3 y9 B( K0 t<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB">
- \3 C9 _" e. ^1 e; _" d0 m0 U<Property propertyName="role_name" masterLocale="en_US">
8 B! ` ^! j+ v0 j8 g9 F7 v<Value index="0"> * W+ C H+ k% ~+ X" }; r9 q
<MasterValue>
0 o* k4 t! b* }" RTester
. n( P3 T: {* o2 J4 j. @</MasterValue>
$ D- |* v, ]. o9 P+ `" K& |; H<LocalizedValue>
( `# t& j% W3 i( O5 M: ~2 ]1 g: U: i3 f2 f% F
测试员
% N, b3 ^ e2 A
( ^( h# i& M9 e# `( v" E f4 }. p$ k1 W, V' u* v- k3 @
8 r% S5 g& Z9 ?- c8 O# h</LocalizedValue> 3 v! r# f/ S" ?2 y
</Value>
" B) P* h6 q& T- c+ p</Property> ! L% i! F* I: I9 x. v
</ObjectInstance>5 H* \9 W' W, L8 o
: R1 d) _% u, v$ q+ a8 k
# b2 B, T O3 A/ `4 Q) K& b+ V
: ^( Q7 L5 W6 V& B- k
) h. v" y9 ~; w V: r0 \
! U/ Z7 u3 h5 T% n4 n. A# p: I
, V0 S) H" C- P/ e* C! U, z7 u1 l8 h3 t7 T6 w* I- b
保存文件.
) t8 {5 k% [' h1 ~
1 `3 E4 ^& {& [0 u5.导入本地化 * S% _5 Z1 A3 s$ Q
4 f! ?" a' E) M
在 TCDOS窗口中进行导入 3 ~8 {2 Z) d( l) F$ h9 L
1 [$ i+ I3 Y& j
: h% |+ B! L1 c7 G% V- O
请把正确的infodba密码提供给-p参数。
% M8 u7 l" l2 J0 q+ \6检查
; W: b) m3 r( Z! H5 j5 c( t
4 R7 K; j; }: \用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称! T3 S5 n/ I' B; k3 ^
, `1 D) k0 v+ h
]1 E: K! Z1 D! i6 H8 {+ o* b8 O5 U$ z; q5 @4 n* j
/ s" _( B- j* {* d3 O |