请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化? * s7 L- Z0 {! z9 Z' \! ?7 |
/ E8 T" B4 f5 y/ v7 {问题:
/ ?4 p/ u8 S" f) {通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管
, \4 h+ I( w5 B4 K0 z9 S$ ?, r) m: q, D. d6 U' E
理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
$ j6 _1 j: u( _. n5 ^( t并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法? : Q( u) K6 L. j! |) S* P
软、硬件环境:
5 o2 k( _0 C# N( c# v平台 : na - D. L. f6 T2 ?) X4 `
- t% g+ _* S2 M4 |: q" c( g3 b
OS : n/a
2 b5 y+ Y! ]+ i: Z5 @5 ROS版本: n/a
/ ]0 d+ R% h$ {5 u
* n& e y+ E2 z" Z- y应用: 组织
3 t" Y8 C5 P5 _( ^2 m版本: V10.1.0及以上 ) z9 x( c, [! u c! R
9 d8 y$ v4 b/ e$ _! e. U' F. |9 i解决方法:
8 @! F7 i9 w9 C: J+ F以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
. l- _7 D$ ]+ ^( h2 h其它语言类似。 9 Y' d$ q H7 j& {) F% A
5 Q' s3 ~2 r6 _# l
1.使用下面的语句创建一些组织结构,组和角色
( j, @7 e1 x: v( {% M2 I, @" f0 v* e请把正确的infodba密码提供给-p参数。
% P( F1 U1 Q9 x! N8 c1 c5 V/ g. Q$ [9 o( y+ `+ {
make_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01 : T4 V9 y- O! @5 m
make_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01 ) a+ S% s1 M* p# K/ c$ G# q J
make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01
$ d7 `2 _, X- W3 @+ a5 V$ O# amake_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02
5 Z9 N! F `" E8 O5 R2 F0 o! W9 Q8 gmake_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02 4 s: M/ A5 b# d# \3 Q
make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02
( Z, U/ n7 k) m* K/ umake_user -u=infodba -p=1234567890 -g=dba -role=Tester 0 r+ k$ I; d% y; n+ C1 S( ^
make_user -u=infodba -p=1234567890 -g=dba -role=QAEng
) [2 L6 a, g! c2 q, v; f" j- a. hmake_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
. F" r8 w' S: I0 }7 q# p2登录进入TC,查看组织结构# A5 P( C% V# K5 w6 R( S
: n; Y& c) o, w5 h$ ~# C
& u3 f d7 p6 D7 ?3 b3. 在TCDOS窗口中使用下面的命令导出组和角色
" j3 X9 V: u% t7 i/ k$ Y. k2 M; ?, U! m; `& ]7 S) E0 W0 g( C: w
导出的文件格式是XML文件。
9 P3 J- M" z0 R! S. |5 n. H
7 Y- c9 n4 [6 r7 o* q3 c- J8 E请把正确的infodba密码提供给-p参数。 ' C( F; l+ C$ ?. v
' i/ p ?* @! R$ ~& A/ p
) b5 ^ z- d u! [- N0 o4.本地化
) o$ z: u% H1 Y5 W3 z d% G% L: p+ D, F/ B4 s, s' L. C! B4 l
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml,
! v, i: O0 c% y# M2 d) l$ o( X9 l L" p8 U F% _! f
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行 $ b' `& s% t' Q* C, F$ U
) v6 p" q/ I( k
本地化的目标语言代码。
, _5 H' H9 ~0 L+ r2 p+ @下面是目标语言的列表
$ C4 j! N3 v" S
. Q6 |6 M: W' `" ?目标语言代码目标语言
5 l. j/ U# ? q0 h7 W; K& T K- Z5 s" Y9 F
cs_CZ 捷克语 1 c; S- B+ A% ?
; t/ P/ E* _8 s! ^, F; a
de_DE 德语 ) Q) z1 Z( {& b6 s5 k* K Y
?! n) E! R& g/ e1 s, b4 p6 zen_US 英语
+ N, N u$ O' W" r9 @. v3 j" s m. D7 u
es_ES 西班牙语
8 Q) m$ V7 A% l
$ P0 m2 G: P5 _fr_FR 法语 3 d6 q& D& Q( X3 x, Q( }
1 s* b, q; O! ?; L4 uit_IT 意大利语
( i( O: }- s c! k1 o* P& G, w4 X& p$ E$ j. C" c
ja_JP 日语
* R. i/ E; ]" N- A) H% M1 P
8 c; ]/ |% g% n4 k2 }. Yko_KR 韩语 ! k- y( d- ~) g# V% V# t7 O# H/ ?
0 H X' x b8 l2 I0 S/ Q3 [
pl_PL 波兰语
& n- y( u$ ?0 j2 G" Q
" Y E4 C$ j$ s/ E& xpt_BR 巴西葡萄牙语 9 B- ]# A: R) e# W- G& x# h
7 k. T% w' |+ k0 S* Cru_RU 俄语 . g3 R m: u9 Z |3 D4 u
7 j( \6 K" `2 `5 \zh_CN 简体中文 ; }0 K( h' t- X7 d
0 D8 ?3 b! p0 N& T
zh_TW 繁体中文 $ d( P9 d' G$ l7 e( }- q- V
4 A/ b3 V9 }0 F4 T. v4 S* @# \
注:
8 B# k8 W7 |* {0 q' l
- p; g$ p: R% w! G& w) L. d1 \- b根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后 9 b2 u0 q- |2 f. Z
. E) c; H# N8 e7 W( X$ X3 z$ d. k的对应名称在下面的属性对之间进行修改。
7 }/ \8 P) s+ w, Y) e$ g* F$ u3 t: d, M& G g. Z4 X
) D* j) w- ~9 Q4 |% D9 i* M
<LocalizedValue>
+ C! ^- U) D5 K6 d</LocalizedValue>
) z. v. p3 g7 E ~- ] f; ^* L注: 4 n% {2 I4 y- w: T- M' I* U
* ?! L9 n2 m0 }# \6 y7 R
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 4 R% _5 A* l& C8 k+ X
* M; z# d. L$ o/ ]7 K) P8 v
对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对 . }) k' o ~1 `6 i. H' N/ K0 S
0 d9 d- x" X, z6 x* ^& v, i
里面的:
4 Q/ w! ^+ p3 {" k$ W4 Q# g
/ I. @; r& c& N: {* P# F I) u/ E' _0 ~: u1 ?; V- }0 C5 P, D! H
<ObjectInstance>
" ?& g6 ], ^ w* c+ x4 N</ObjectInstance>
0 g* x$ l/ z& W! b# U请注意保证XML格式的正确性。- Z8 J" A/ S$ v/ | w3 B
组的本地化修改的例子: 0 L1 t5 P. u8 n! w4 L% M
|8 n( m" l: _1 c6 Z; @( G" ^( n9 Y/ G! B* O
4 A6 {, j; z) u. a! L
<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> 1 M+ A$ `2 C7 e1 t
<Property propertyName="name" masterLocale="en_US"> , t. S$ g4 m: E# O# R; l b2 ]
<Value index="0">
( h5 }$ Z* e0 ~. q/ Z) D! f# V! `<MasterValue>
, E: `. @6 X: C4 O `* fdba ; c8 K/ Z/ T# y8 k, u( }
</MasterValue>
) A5 P& S$ {2 f7 m. ^<LocalizedValue> : I7 q# J& |- g9 K$ U- t
dba " D+ H6 t* g) [. |. ~: T6 g: B
</LocalizedValue>
# |' f% ^# L# k</Value> & Q f% l$ W) d' u6 W0 l
</Property> 8 [( E7 N- [0 i o3 [' r$ b* D
</ObjectInstance>
. n/ T* ]2 X/ D9 Y: f<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB"> / V; H B) S& D' j9 }: n( E
<Property propertyName="name" masterLocale="en_US">
2 e3 s& Y6 P F9 P<Value index="0"> J6 Y3 j/ ?3 q; ]
<MasterValue>
# M. n1 S& C0 nGF02 , m) I i/ Q' N1 O, D
</MasterValue> - R* ^$ b5 l& r' i" h/ n |1 v9 m
<LocalizedValue>
! E/ F6 |& L8 v$ l% i% s& z
K; P7 L3 P1 j9 ~" E/ F工艺02 # J) w$ ^! N2 f9 k( }
% C* M5 Y* e! b6 X
/ [9 L3 m, H' s</LocalizedValue> 8 S! o: g5 u8 L7 r6 B7 i# A
</Value> * u: j& d% j& I# Z2 J$ q
</Property> % C9 P4 l! E2 n5 e% ?4 g
</ObjectInstance> . i) I, P1 r2 _5 S. h4 C
9 r0 f' D6 p2 M+ A角色的本地化修改的例子: , b8 i" f" p! `
1 ^# w }. E& H# n
# }1 R6 E+ s& ~7 a- D4 K9 {) }1 B* s7 F& y" Z% ?' `* m+ h/ n; e
: f! B+ G7 s/ R" ~" S
3 t8 G) x e" D6 M<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB">
+ A$ W8 {. V/ G& g0 d<Property propertyName="role_name" masterLocale="en_US"> 6 Z1 w. [& `" _1 @' A4 R+ x/ h& u
<Value index="0"> " q- j* }9 n8 b# X% x
<MasterValue> 6 X+ U: \1 V. I1 p! W
DBA
) v, H& ?5 Y/ L; w* T</MasterValue>
v9 W8 X$ v9 y+ j5 o' m<LocalizedValue> 9 {2 g& T1 m, @- g
DBA
5 C z2 @6 p4 a# X8 b2 V</LocalizedValue> b7 {, d- z9 j: [& Q. n8 _0 V2 z/ R4 h
</Value>
! c* w/ q, F1 C3 e: y</Property>
l6 ~5 w' }; u) {6 t</ObjectInstance>
p' T8 t6 n' f- ]5 \<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB">
: p; B1 `- E% l& d3 U<Property propertyName="role_name" masterLocale="en_US">
3 z5 X' @/ [2 D/ n<Value index="0"> # I: F; o" b4 M5 J* r
<MasterValue> + [. u5 G& O% K/ g
Tester
4 n/ c6 r5 W, N1 I3 J</MasterValue>
' | r) x, h# g7 a4 ]% f<LocalizedValue> 6 f4 X: r2 I" _' F
) |: b( {: h, }' Q: {8 E
测试员
0 O" \5 j. G7 W/ H J( C. u. o) a8 F; p* T, ?
: m. x% r# Q4 M; ^
! G4 v! l& ]; B. J7 V: I- h% [, y</LocalizedValue>
, t0 x7 u1 |4 l7 m) A3 u</Value>
x$ [3 v4 _5 n( q- P</Property> : k+ } v* @4 f0 O; ^7 ]! r
</ObjectInstance>: b9 y+ ]6 ^: P+ S! v
0 G8 V$ o- n' D
?5 ]3 A2 @: x4 i6 O$ a; B. u2 f6 t4 ?3 W" o! g* R) O
. f& P( o# M: a" a9 |4 ~
: w6 d. |. }. W% F# t2 j' @4 v5 N, [ O
3 @% Q2 Z3 t s3 W
保存文件. 1 [( n% i7 s0 X3 I7 [$ K k
: E" Z- }9 K6 k9 z1 I- r' Y
5.导入本地化 - i/ Z4 r" a& ^# l
0 A' m4 z7 m% s; h: `2 {, L5 C% r
在 TCDOS窗口中进行导入
+ A, Q" i" f2 u$ \, W 2 Z4 a$ V4 M- J
) ^# e, |7 s7 }3 h+ y4 p1 q2 Q请把正确的infodba密码提供给-p参数。
- [4 D, s0 Q1 M( W+ {- p0 r+ k8 X6检查
9 l( }) P3 q& n" B, B0 k8 ?6 v0 I
, ^' T( [5 j6 r& }' _用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称6 |9 q% B. z' x7 X5 p% C, T2 _1 o2 r! T
; h- C$ w" {( j
& e* f1 ^7 E$ V: b8 D0 M$ G
$ o0 I. K% G; H' s8 x
$ Y/ W# X3 p' \- N1 M+ z9 l/ X1 G) t |