请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
+ ]7 v1 D5 j t) s' B
0 T F6 H: h- |* t问题: ( l$ Q Z; u) C) F* B1 O& ?
通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管8 g; t2 z+ V6 h. a
* E% a7 c: Q# [3 N9 t v# }理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
x0 R/ E; [+ C1 D并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法? 5 f+ f5 L( _( V
软、硬件环境:
- @) p2 ~1 Z3 m" C- ?$ ?: {6 Y6 h平台 : na ! n- g {. [# ]+ o" x
* f$ E8 D# I: H" s* C& P4 w# S
OS : n/a
) j' Q. z- E f- T; zOS版本: n/a
$ Y+ C$ `8 }# b3 T" j" C8 Y* t
7 E" i3 T H4 {" F) ^" M I应用: 组织 0 z" g6 A# Q+ m; e2 S* `. N
版本: V10.1.0及以上
8 J- M/ D( c# G! \0 d5 ~" i: S8 b8 X8 L A0 C$ O e9 O3 c* n
解决方法:
2 K; y/ ~5 Z: N! H _1 i+ |% v以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程, - Q; g( ~7 {2 Q5 ]7 ~
其它语言类似。
: l: ]& ?& [2 S& w% G$ D, ?! T! B ( d3 M8 u. i% H% D: \, u. k
1.使用下面的语句创建一些组织结构,组和角色
3 D; q; K! z9 _4 u+ Z请把正确的infodba密码提供给-p参数。
; T: ~" o+ H' A* s
. t' g. N9 G: T i( _. xmake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
1 C5 m! Z! k' Cmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01 ; ?, w# j7 M# I( w; u
make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 ! r' ^: X) e& S, j# N& l0 X
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02
. E u0 D- a7 Vmake_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02 ) k0 O" g+ {* `3 |- m9 K8 b' u' o/ C
make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02
4 O3 O; l! j$ _1 x- r; B* D! |make_user -u=infodba -p=1234567890 -g=dba -role=Tester
3 C% L+ \! V4 E" C: amake_user -u=infodba -p=1234567890 -g=dba -role=QAEng " I' T# J# T& `% l- s- d0 W$ t
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
7 U2 w. F" i! t9 s9 _7 L |2登录进入TC,查看组织结构
3 D2 Z8 C0 ]- S4 B F
8 B+ z9 V9 E8 w6 G8 b
( G- y8 J- P# P3. 在TCDOS窗口中使用下面的命令导出组和角色
4 T# b: H1 A& G; R( l
. S" p1 Y3 f* j6 J$ x导出的文件格式是XML文件。
5 M9 J, A) c9 s' J9 q
0 q! J: v5 y7 h1 v请把正确的infodba密码提供给-p参数。 * e$ K7 ?, ^9 n& T
$ y [: o1 g% S9 I/ A% g
5 r% t- B+ ^/ a q/ \$ r1 w
4.本地化
6 Z6 F5 j, D& M4 a Y2 B( M) X: p: Y% m: [& b e
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml,
" S8 q9 V1 O9 O! F; A; P, o
, y- h$ o0 n% V* `用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
* w- X7 V& r" i# E6 w0 w% x) {) R3 ~7 b. o2 P2 a
本地化的目标语言代码。
, t" g$ F% a! e: |* L N0 N* p下面是目标语言的列表 . @# j9 K1 m, W4 _8 q8 h
( E# w! h6 l2 ]$ n" `* }0 }
目标语言代码目标语言
, g2 m8 ~9 q1 o7 e2 j* ` I2 l6 L1 q) y, N; g
cs_CZ 捷克语 9 B0 a, i& m( O4 a& d
& \6 l& i. e8 s# `& C
de_DE 德语
6 b% w J( L7 H0 S. k0 h" {
]% z. J* h1 d# W- x) ?, [/ T& G- hen_US 英语
6 O2 d3 [3 B: E$ t( p2 m0 `. o" j& n$ \0 U- ^+ O1 a/ t
es_ES 西班牙语
$ U- a/ {4 A1 g1 ~; [" V
5 E1 F8 \( F3 X! o! ^fr_FR 法语 7 o2 \# a* ?) H( n9 o s
o6 m( U/ v- U1 m9 J: n0 ^6 \
it_IT 意大利语
+ f$ D6 @3 q( i# u# s& U
. E. _: ~/ B' p1 e yja_JP 日语 r+ E4 |& G6 }) [. X1 x
5 `9 `; u* U1 J/ D# uko_KR 韩语 + w1 S* Q: V+ V; ]& h" L
* \ x( a* u. l7 Q; W6 w
pl_PL 波兰语 5 @8 g% t) g" a& }; f1 W
" t3 U$ L6 d5 }9 Q0 z& [6 O" E
pt_BR 巴西葡萄牙语 ( J7 @ L& K3 i c3 ?: ?+ x' f
5 s9 \6 q4 Z' Y& o% @; T
ru_RU 俄语 3 K* M# C! g; N5 P. b
+ v/ w9 r F1 d, v
zh_CN 简体中文
$ ?8 H" j4 H/ A" M6 W% z$ P$ O# n
zh_TW 繁体中文 2 A6 x" B# R8 F6 {( [2 L# r1 C4 |
4 E5 \' X/ k& \ |* f注: % N+ p. r" f3 ^; p
4 _. F5 u/ [$ r3 ]0 o/ {# d z2 F
根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后 $ t; [% j8 q& O7 ^/ f
8 H/ R( A) P1 r: }( L的对应名称在下面的属性对之间进行修改。 # i5 y! O8 h. x4 ]/ m& l. i4 f
/ n+ r" F8 {; h' N6 Z
8 q5 ]9 s0 Y' P9 w, U& Q( ?( Q
<LocalizedValue> 9 |+ q) c) N' b, Q7 Z' d: u5 L
</LocalizedValue> 5 P1 u- t! s9 M
注:
s1 b" v7 ]+ H+ Y! D3 P7 c$ M$ E1 [1 ]
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 1 q/ c- N9 p3 S) X# r7 S6 Y, Z
7 p w T$ E! W, V0 g1 K/ A对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对 " n. Q; [; R3 C# \) x/ l* `0 \ z
6 K3 c( w* ?) P s
里面的: # n% ~, {% L3 f; u) j0 g0 m( P
) j- L) R( i* p! [: n0 _
4 t0 F ~( E! B<ObjectInstance>
; v9 _3 y' w5 v( M4 \) F3 |</ObjectInstance>
3 n. R0 [' J7 Y2 l( k请注意保证XML格式的正确性。
9 Z7 _: B' _! \! `组的本地化修改的例子: 0 c3 L6 w j2 K
% O6 U) c- c& N0 V3 f; H0 }0 U' f$ H( ~' }# z
- [& H" R: D) j& u- }6 o7 ?<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> 5 @$ K* z5 B3 O" L( y* K
<Property propertyName="name" masterLocale="en_US">
0 b/ f0 e& l: u0 n J5 H$ s<Value index="0"> # L5 u2 J7 }- e
<MasterValue>
8 ]: p0 i7 g) H1 |8 Z. jdba $ F l+ T4 |1 B) @6 w
</MasterValue>
y2 k2 S7 ^6 _1 z<LocalizedValue> 3 H. D _" j H, _6 V8 f
dba " r$ X. _- d5 q( O. C, E
</LocalizedValue>
/ C7 Z9 h/ ?( o' A' V: ~9 j0 z</Value> 7 {4 \ y0 L" @+ _) V) \7 i, [. g
</Property>
& q! u# p; Y/ h: H X; P</ObjectInstance>
' U1 H1 P# x# c y<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB"> 5 B. d* c; O+ {$ k/ Q
<Property propertyName="name" masterLocale="en_US"> , b) h8 z0 H3 E4 W
<Value index="0"> $ s: D4 f9 I. M% B$ L
<MasterValue>
2 H- O9 |& i7 e) ] x* x2 ~GF02 3 D: t% T3 i. H* ?# H- G3 N( r
</MasterValue> 7 `2 R8 d2 B8 D; q/ A/ k4 Y3 X+ C
<LocalizedValue>
; t1 P& ^3 M; a9 V; P
: ]: B% G9 D) l工艺02 3 s& o% y# Z/ o! g) j# } B
5 ~7 `* ]) R8 r( I
3 I, r W+ i; D- E$ N; r
</LocalizedValue> " E( C Q1 l" _
</Value>
/ q4 G5 ~9 _6 R# O1 N7 S9 |</Property>
7 Q5 d& T, z+ K* \</ObjectInstance>
* I% \$ L5 B! \* \: E- V6 X6 G; S# _' B- `% }
角色的本地化修改的例子: , X) O: s7 J- [' z* t/ S* D5 s
/ _5 J4 o. h2 h, [6 P" Q' e0 K" O
4 i+ C4 E+ y6 w: l
4 r) ~; w7 z9 b3 u9 p4 Y% [4 d9 J7 F+ u- t7 x* t7 h
5 N' E; Z' p1 ]; J c# e9 w<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB">
6 E) I- b0 I) m* J<Property propertyName="role_name" masterLocale="en_US">
3 s" y v3 U: V1 }: _<Value index="0">
- N: C1 g" G* h3 {& ~. O<MasterValue>
" c6 N) Z* _5 _( r6 D( S. ?DBA
- w- c$ b8 i* {/ |( C0 ~</MasterValue> 5 q5 l- _- x1 U( I
<LocalizedValue>
2 x7 k+ H2 Q* A; H7 ~DBA
- R! ?, B# |, Z% j/ l7 V</LocalizedValue> # p, r! y6 M7 Y' L* B
</Value>
3 g: B, e5 n8 }* U</Property> 9 M n/ U% }/ W
</ObjectInstance> 7 H3 r8 C6 Y$ V- L1 i& n
<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB"> 7 ` [* ?1 P$ H1 i% H: _: ?4 c
<Property propertyName="role_name" masterLocale="en_US"> + K" `# k1 y6 i* g; n4 S% @0 ^# Q
<Value index="0"> / P- K$ ~& q9 \5 K: ?, D, ] N
<MasterValue> : d7 H, V4 P3 ^+ B& \) K6 z
Tester ! R+ L" B, }( V% v- N& n( k. q$ E% C
</MasterValue> 5 ^4 c1 }8 q/ P, `5 B3 a* O* Y# Y% `; Z
<LocalizedValue>
% S9 u5 q8 @; \2 J, O
: ?5 k! g( @; m( O2 k: W测试员 - y; \+ |6 ~7 D6 S) ?
# T3 D; O T8 N# a
" N0 r2 t1 v2 W! m" t$ O2 \& ?8 N6 f- @3 t8 O6 V: o* d& N
</LocalizedValue> + s4 h* @6 B' {! F
</Value>
- ~1 e3 @, [# V2 n1 a</Property> 0 e! _6 Q: w$ q/ i0 p0 n
</ObjectInstance>
3 S1 i% T+ J' g" d, t! {$ @$ q" t8 X O- f7 I* G- [
! Z7 Z/ s0 a4 j+ I5 N; N$ D; `
, P% g+ e2 n7 C+ l+ N! H- Y
% o8 P# i$ x Z1 g9 P; K
. t. V7 F4 E* t% w5 \5 }
F/ h* W' I* I) [6 H5 _
' [. J$ b; o4 z* @ X
保存文件. 8 `7 p' x; h1 F; w5 X
/ E4 _3 i; o8 a5 a6 r5 _5.导入本地化 0 `! }% K" ~) h0 s" G
7 W; J5 ^1 T# b
在 TCDOS窗口中进行导入 0 t/ Z# T% i# D F S
* ?+ ?5 G8 Y5 @* w g1 x
& u4 t, W) B6 k请把正确的infodba密码提供给-p参数。
2 `1 f9 n: `! Z: L+ h6检查 0 y: o+ z: b2 q/ g
8 w$ I9 U1 o7 r( M) ?# q. W用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
: K7 P7 h3 }8 @( E' W# R
4 @! p5 P; U# Y8 g# V
3 N8 G( i7 G) n& i7 a- P: V T8 |7 o
4 d* Y' p7 i* m1 t& f8 L4 O3 v6 ^# g4 m: b8 k* w E( H
|