请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化? ; I E# I7 R) j) ]& M. n" A
9 y5 B3 M5 B: Y! }" K问题:
, s5 k1 M. ~% N" p通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管# _% {; k; X. `9 z$ i, ?2 u
0 }0 ]8 c$ p) Z! L; I# Y
理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
~+ R: R. H. K* Y' d. Q并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法? : Y% E7 e( r; x5 v. Z% c
软、硬件环境:
1 p, t. w$ S* l# P* `3 m7 u. n平台 : na 1 u6 |- w: _! L5 ?; K2 {/ {
! l+ X, j/ E _0 OOS : n/a
4 p- [0 g: t5 E3 C3 J8 k4 r) hOS版本: n/a
! o6 \, \; N' [" r6 G: X6 I4 K5 d# ]* g7 W* f1 z5 V
应用: 组织
, {4 i8 a$ ?4 ?2 g v版本: V10.1.0及以上 , Q. r! }; S0 w6 t
' f {- L+ ~( M4 \2 }# ]; ~
解决方法: : _" I3 d! e! i' `4 \- U
以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
3 o/ _( `: c/ A* ]其它语言类似。
5 I9 ]; O/ x3 k9 k$ b
7 X6 G2 w/ Y, H* q! B/ C1.使用下面的语句创建一些组织结构,组和角色 , j) L. T+ _. a. X* \
请把正确的infodba密码提供给-p参数。
! ^: B0 C, _: a; O
' J5 j. x' b9 U2 W8 r7 dmake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
/ x3 U) p) T0 J3 m7 n: G, Kmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01
7 q: Q! T2 R! _8 g$ ]+ P: d! rmake_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 - j! o8 n: e. e0 p" o1 D
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02 . o: J) R$ c( \" ]
make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02 & A3 `# V4 w3 W) C; x |9 _1 g/ m
make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02 ' Z. Z% p" \- K% o: H- r) z, R( i$ k
make_user -u=infodba -p=1234567890 -g=dba -role=Tester
/ k+ m% ~% `- x0 wmake_user -u=infodba -p=1234567890 -g=dba -role=QAEng 4 R. ^* o5 V& E0 b/ O3 \5 Y7 `6 z* z
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
( @6 w( s+ S# O# q# G" i- {2登录进入TC,查看组织结构7 V ~% t; b. v6 R/ r2 X) m9 M
6 p2 d+ _, G Q L6 S+ u; A
. Z4 U0 S+ c0 L3. 在TCDOS窗口中使用下面的命令导出组和角色
- _; S u2 I0 D8 O! }
3 j6 S( I1 u8 r% m: {9 i导出的文件格式是XML文件。
$ U2 J `- H' u* e, [; E) G' S3 p4 O! Y0 l& R+ P. U- q3 h' ~
请把正确的infodba密码提供给-p参数。 6 \: h6 a! W; A% p/ X9 i
% v, Q, y# p* g) s
2 {* b5 V3 X; v. p& ~
4.本地化
' h8 ]1 p9 n" [* o. L* z5 z8 x1 W5 x. C/ S# p {! F8 j
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, # }8 _, @& M0 D
h9 t( G% p# k, s. {" C* w
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行 ; ~/ x& Z4 g6 e
4 o5 p; n! k. a
本地化的目标语言代码。
4 ~+ B2 o* h% A! T! b. V下面是目标语言的列表
1 i# E* v( {! C% B1 f; F* v
9 r: ?" `8 h2 {目标语言代码目标语言 , Y& }: ^/ `" u3 J% N9 B) u
4 e2 j; ?: C% ~+ a/ U1 y: r( G
cs_CZ 捷克语 ' @# l% E9 H* ?( P. a0 u2 x
- |! h3 @* W$ D6 Wde_DE 德语
& I O& e' t# k6 [& V' h$ v N6 ~5 j) z, i$ s
en_US 英语 # F8 Z# E% c4 u0 P* T
f! s" U! m- E: V$ les_ES 西班牙语 ! [3 X) @1 E$ c/ U8 w& f! @
! c+ @" Z# m% {+ I
fr_FR 法语 2 q5 D" e* |& I3 d: k
a' |4 r% [, Q3 n
it_IT 意大利语
! O+ S: y3 Z5 E$ M1 k2 w! d+ Z" J# I5 ^" k, f" q# ]# X
ja_JP 日语
6 K# j+ O0 ^% Y$ G5 p+ Q$ L/ u8 w5 a7 J
ko_KR 韩语
' c: z6 |* c1 {! w
# Z2 L: U/ X( @5 p( [9 f& Jpl_PL 波兰语
, K4 Y5 N, A' x5 x& F8 @0 r R( D' f9 O3 v
pt_BR 巴西葡萄牙语
5 ]- t" _3 h. D; u3 y p
, u0 z9 o* }0 V9 S/ t% _* qru_RU 俄语
0 w) a9 A% I* j) }! Q% r+ v- Q4 K% S* n% |, G
zh_CN 简体中文
, ?, V- j8 W2 `' U3 v# Q7 B
: R( n3 [- v3 [ Fzh_TW 繁体中文
* L3 ]7 Q# z2 z; M, g% \
' y# q" e a8 p$ |& c c注: 4 T+ c/ c+ {5 c/ u# L( D3 f
! v* G3 k a+ z$ [根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后 4 r. k4 U' ?: |- k% w
( J, I1 v. ]% b, ?的对应名称在下面的属性对之间进行修改。
. o2 I ]' C4 N" R
2 {4 ], q! y9 U6 G, b- X. m' m( V1 f3 N, o
<LocalizedValue>
4 R; t% g" t" H) ~1 f0 K* Y- K</LocalizedValue> $ S8 I7 f% V" i& ^& O; X- g
注:
3 r6 U( `; ^0 y y. z$ Z$ G/ n& S3 ^4 `7 Z7 P! j% _
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 & k9 a7 s9 `: h9 z" j6 g h
6 @/ R) |, [. f% Q2 u对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对 / h( K. x& Q3 {8 ?5 W0 S
6 L8 w( n! E& c ?# y- j' _8 E9 |里面的:
4 g$ B" _0 W( X0 \* W* B0 s7 q% p1 h' {/ J
6 j8 w! \3 m3 o" o4 c3 L# K' _7 ]+ ?<ObjectInstance>
; n: O. `8 b" I. x</ObjectInstance> 0 w& |) }% a& l6 o; w
请注意保证XML格式的正确性。/ Q6 [) k) n3 D9 u: \
组的本地化修改的例子:
/ V( A3 h$ M0 u" t. M& a4 d$ \. O9 w9 }' [/ Y. w8 L& K3 v
# M4 ?, b- W8 H6 \
! i: O' j+ m5 X3 s<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> ; }! V7 g* e/ c1 n
<Property propertyName="name" masterLocale="en_US"> ) E7 o$ k& b1 s. y# H4 f
<Value index="0"> 1 [1 l; y$ u; p, u
<MasterValue>
- o* R/ k* O$ R+ H$ O2 e4 cdba 0 Z: K2 a2 s3 i, M
</MasterValue> , E6 ?) _- `+ i* H4 H& [' |5 O
<LocalizedValue> ' j( N- V$ P% s( X9 T8 `( Y2 t
dba
* n$ ]5 D, \6 V- F b" _0 M3 U</LocalizedValue> 4 q* `0 P0 g7 _1 \6 x5 z! g
</Value> . b+ R$ t- O N
</Property> & L2 z9 h4 M* f# H# Y. F% x2 o
</ObjectInstance> 0 {8 D; N( {8 n }+ \3 l# p5 l5 y
<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
" X' m, [8 {+ T- V# O7 s<Property propertyName="name" masterLocale="en_US"> $ }9 W# \; f; m# m3 T3 U* Z
<Value index="0"> / e, H% _( U4 v% k: c! V
<MasterValue> # T# v' R# s. [9 U# X, P
GF02 $ F( e3 k! L+ r. ]3 Z4 i) Y
</MasterValue>
& W. c( p1 Y( ~9 L2 L<LocalizedValue> . D# X$ B# S0 R, Y1 a1 P; a6 {
4 E, o3 q1 y: a$ s' J9 {+ k- f$ G工艺02 7 H: x2 O7 S) i/ S1 o8 p
0 f3 T* x7 @+ Z8 D& G' o
- P5 A6 K1 {1 J2 X
</LocalizedValue> ) R2 M& K `. p. V1 x4 v+ g$ K% A
</Value>
2 c3 E* \) G, \, y</Property>
. Z% o6 J* ^6 ?</ObjectInstance>
! I+ `$ a; [* n8 y" ?% V2 e" A. r* ?4 `6 f2 G2 D
角色的本地化修改的例子: + S9 Q% u: b5 F4 q2 n
* w; W: @& r, ]/ b
2 F8 M6 |" }$ K
2 {' Y5 Q. c- F# x
" @; n3 u( F* v1 \0 l: c! d6 h- D" G# v+ A: }; T& D
<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> ' q# I' r/ _, r+ B# `
<Property propertyName="role_name" masterLocale="en_US"> ! n) C1 J0 j" v1 \8 w
<Value index="0"> - Y6 ^* F* B. E1 G
<MasterValue> 0 D, l+ H6 M* m
DBA
9 A( i% F# l' B. X1 i* }- }</MasterValue> 8 B! U! O( K( c& s3 E
<LocalizedValue>
! O) w3 a K$ ]' S2 h4 sDBA , r- q" t: _$ q" y, [) N; P
</LocalizedValue> + {( c! q) V5 N, i' U
</Value>
# {( V; E G7 G. r</Property>
0 H# G K7 n( v. c* _) J. {</ObjectInstance>
: c& Q6 h# s' j. O<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB"> G- a. ~; {) i: l
<Property propertyName="role_name" masterLocale="en_US">
# j, o% i, H9 F$ C4 U3 m<Value index="0">
6 U( D& B, f" j<MasterValue>
* E% M5 S" b6 \- S7 d" {Tester ; ^9 A f& e) x! U. ~# M7 @ e: @
</MasterValue>
" s. y6 }! A+ ^- \; S2 t( F3 L<LocalizedValue> $ ]7 w$ X- P) `7 R* M- p
% u0 p9 a% C1 g$ m测试员 . ~- T+ U1 w5 t X6 Q. A2 J* ^5 D
- ?. H' `' B6 f3 D! b( r0 C
O' |) g6 T9 G7 ~' |2 D
/ S! H; a0 |9 y% w4 T- |( J1 h3 l
</LocalizedValue> ( b5 \+ c0 F# q/ s$ C+ M; T( F
</Value>
6 \/ d" f0 Y( t7 [3 [</Property> ; _" s! K4 ] @
</ObjectInstance>, u( m2 l& u7 G( c+ u g: P1 i; _
6 L/ L$ e5 z# z
$ w0 ]8 M% Y d+ T) D; I; ]5 }7 m) ?: g( ^5 t, E
& ?0 h/ |$ L6 H
/ z" j8 K8 S/ a& q" x
* n; U# w* k* P7 J
) q e- T3 p/ W9 V保存文件. " D8 g' Y3 I; V: C& Z( Y3 l
3 V* {! k+ v% _, O5.导入本地化 7 X/ _# c3 }$ P7 C+ m: |0 v
6 w, o! t4 W5 H( i在 TCDOS窗口中进行导入
# U" d1 L3 t) n( Z9 |, l/ r9 x, g / }* K* Y6 V. i
6 x ]* N! [! ?, \0 K2 p/ Z' V7 b1 k请把正确的infodba密码提供给-p参数。
! M* d+ b' d+ _- T6检查
# x- ?# S; a" \ q c
3 \# _" `: C2 L. q6 Q8 t! H用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
8 V% o7 n1 h+ Z V
$ j/ ^5 N# k6 c1 s% V4 ~. {4 q- \0 D1 q. R0 {# r' m9 T/ h t
$ r$ V9 I% ~4 `+ }4 v7 S) C5 O- Q! B, w7 z3 T2 ?/ A
|