请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
[4 y. B- }" F* O% V7 S0 u' _
问题:
# y% Q- F( Y! q& F( _通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管
" [/ [% @* U1 c. V
6 O* `; v& M! F8 N理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
9 m. X, `2 I i( Q并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法?
$ ~* K0 N1 O% L1 Y! s软、硬件环境:
" I! V% `' M- q平台 : na 6 e/ s) t4 s* q/ y" r# Q
" K: ?% _7 f+ M. `OS : n/a
$ E; E. c$ v1 U" `6 LOS版本: n/a + T4 |8 t: S- c2 f0 Q2 M9 V- }
$ R2 ^* P! P0 M应用: 组织 - G" z. l6 h; y8 x/ ~
版本: V10.1.0及以上
& c; V: T6 A2 x) d" k; g3 K; e! A6 C: p
解决方法:
* p* H& ^2 X D: M6 Z+ G以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
8 i* e9 k0 l. i" i- Y# |8 k* _% X' u其它语言类似。 ! I. o6 t) M5 V+ b/ f1 \( w
: ]3 f& }3 n/ m9 x# P: j1.使用下面的语句创建一些组织结构,组和角色
3 V- E, i) h% t* S请把正确的infodba密码提供给-p参数。
1 E" Z: M) x/ \: ^7 z j ?* c/ Y9 f/ j/ {
make_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01 / a+ |; L! A" Y3 v6 ^; ^
make_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01
[& W& s' o5 S; M( T9 ~1 qmake_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 & `% `# w8 U, m* g/ Y2 v" g
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02 + v& o1 \- m' r7 l e: ~
make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
( j5 q5 X3 ^, |4 [/ Y) ~9 Cmake_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02 ( ]+ H5 Z3 ~; s; E: P
make_user -u=infodba -p=1234567890 -g=dba -role=Tester
! x$ r) f1 Q7 M( A3 b( Qmake_user -u=infodba -p=1234567890 -g=dba -role=QAEng " h4 y5 s. P L2 q$ V. B4 i4 L
make_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
# B8 s' S2 K( C+ U( k2登录进入TC,查看组织结构3 U0 u" Y& @* p8 S# z, N
0 c! }' E1 e3 p& G% W
0 }' w5 h" @) U: S3. 在TCDOS窗口中使用下面的命令导出组和角色
( n0 `' H4 n0 T& U# q# {+ M2 Z
4 Z9 J `& M2 C: w3 X导出的文件格式是XML文件。 / h% t! U: j$ l& K. s3 \: N
5 D1 ]# }) y! p/ k; T
请把正确的infodba密码提供给-p参数。
' t3 Y. F' Q9 v, ~- I, u
9 n: t+ u& o4 f& Q, I8 t J
4 ^- H6 w3 K. _3 `: V4.本地化
/ k# [( L. T6 Y% e; i; C0 v8 i+ A0 m' {/ P
复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, ! I) {- J" X; v- s, I) ~
- ?2 A7 @- c1 ~/ Z6 D" f
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
8 ^/ }) j) S- q' P' e
5 |+ [- n2 Q8 ]本地化的目标语言代码。
: R0 i$ }# F$ D1 h8 Y% T下面是目标语言的列表
" w) a( G, ?0 n+ ^2 i9 B- E/ P& J" {7 H8 m5 W
目标语言代码目标语言
/ a- [' _) ?/ j2 w/ U7 \
: A$ }8 P2 P/ X+ P$ `cs_CZ 捷克语 4 F( u* o# F( u$ x6 I
m6 D# }- P& v0 E* ?de_DE 德语 * k: e" ?! H) G6 y, @+ N
' z% h* T7 x' Y) \9 e Pen_US 英语 * E8 d- D& |7 u! Y3 @9 n! n6 W
$ g" _4 ?3 j$ J' L6 x# nes_ES 西班牙语 * A/ X) ~5 g! A$ W4 s8 s3 N
+ y1 E. D# }+ ` p# u
fr_FR 法语 ; u+ A7 A# i" L6 \4 s, g3 N" S
7 A6 \. c9 i* U* Yit_IT 意大利语 6 m5 P, R! n2 ?5 N3 Z! O
( {' p- `0 a' H* J$ h Eja_JP 日语
) r' A/ x- I7 x' c/ k m j4 o
- s& k( m% d- R5 v4 Cko_KR 韩语 6 k1 Z6 c( u" o5 M5 `
8 G$ S; K l9 M9 ]9 y6 h
pl_PL 波兰语
3 e: U3 `. B9 t& M! v7 j9 M! v5 W# E
pt_BR 巴西葡萄牙语
& U% a" v& L4 E/ |) {' G7 c/ p/ t3 s% m# Z3 b
ru_RU 俄语 1 v* W5 }- T2 ]8 J
, @; ]7 z3 L/ c$ z
zh_CN 简体中文
( G7 l( `6 A/ L( {/ Z
# }& I) L$ J& J3 c; Wzh_TW 繁体中文 8 }% {" i7 J- K% Y
* l2 j8 [( j1 Q. O5 H/ q" d" r注: / V% L( ~! W T; T: b
/ f+ u3 D# i8 {' T F/ M) B0 H根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后
. p7 g# ]; o/ N1 u; `# Q3 f2 q
4 V9 O a' ^" \/ e; o2 P的对应名称在下面的属性对之间进行修改。 5 M' B p7 D$ T$ a% y m
% N: j+ d1 u+ ]- | |9 a% J
, K. w! l) v4 M8 T<LocalizedValue> i6 t i( U- X0 S
</LocalizedValue> ) S; k" A5 j2 B: S/ {
注: 8 A/ h) B2 v; N, L9 t! c2 K* I
4 Z+ p$ N% O" w& v如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。
+ ^: v2 a$ n$ N8 R0 f- V2 t9 u
+ w2 Z3 a) D* B# |6 G对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对 ' N9 R* q. K: n! P) O
4 l7 {# ^) h( m! a D$ e$ @里面的: ! N9 |, d; P" Q
- Z- F$ K' K' x* t4 G, w
5 V' n6 Z8 S: r8 H7 @<ObjectInstance> ! Y9 U" b" w- u3 B# y; `" y7 d
</ObjectInstance> . X9 j `8 |" L* C4 A/ x
请注意保证XML格式的正确性。
/ X6 w! f$ S. v# l组的本地化修改的例子: # k1 p, R- w4 f1 e# g8 \: F& z
, A- A1 c" L2 P5 F! A+ ~# z5 t: l4 N
0 k6 ]1 r% P( k' P0 r
<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> 9 @6 h4 w, z- D U9 ~9 l( ^! P5 n
<Property propertyName="name" masterLocale="en_US">
, _7 n/ V6 R( a' T, K0 E<Value index="0">
; q2 w1 f9 ^# B( `8 F6 Q' R" ?<MasterValue>
9 W6 L1 Y# L# [dba ) ^9 R+ Z: u$ h. Q) A6 L0 h
</MasterValue> , N {! [, e2 t2 V6 t2 A
<LocalizedValue>
- _' S; r2 A+ K7 M2 ?dba 9 @' f# |1 [5 ~2 l! S+ [; j! Z
</LocalizedValue>
! G6 c" ^) ~( m0 m! @</Value> ) r, ?1 S- Y8 W7 Q0 r. N c
</Property>
7 l# n7 x/ @8 i5 R</ObjectInstance> ' c( a2 [$ s( E! [6 C) g/ J
<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
" A. a3 C( V: |& @: Y7 K2 B<Property propertyName="name" masterLocale="en_US">
, |6 i3 I U/ y5 u3 J<Value index="0"> ! r. I q+ D& T5 [
<MasterValue> $ I8 ]- I% \0 u' N, W. P
GF02 0 m ~, e! T T$ i0 h1 X: h
</MasterValue> % |3 W( c; U' K. u
<LocalizedValue>
/ H3 _2 o7 p0 k$ J' f6 B, @* h7 m% C7 z1 p
工艺02 $ o0 r, ?0 }' G, `- S( z( D
6 z, V. e) `: H- a5 x V
- \: F- m* k6 G# e8 e</LocalizedValue>
/ s P% b1 \, M" P n</Value>
4 I# u8 F/ ~; [9 |: U6 t" Z, k</Property>
" J, x. `' O0 v% c9 r& q" S</ObjectInstance>
, p3 w3 ?6 P( s: h3 M
7 q% N5 g+ X. g$ n- a3 v+ p角色的本地化修改的例子:
+ A$ x% }" Q' J% d' E# ?: P$ T# p2 W9 s
+ n" o; X# Y, {( W- E! p7 l" \ 9 \0 `6 m. a# X& q8 Y% j& M- j
4 z3 b0 \% [$ R# p' S. q4 q+ e9 Q1 b8 w9 R# \1 U) O' M
' [& \" l9 k5 q& B5 K6 [1 D; H
<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> 9 Z0 {/ q4 p' o; D: O5 f) o
<Property propertyName="role_name" masterLocale="en_US">
9 f. M3 ^' t. o! Q! h, Z& e<Value index="0"> , @# Q* v U* u5 A' w, _" s' M
<MasterValue> , N% D* ?- O) F# Q! b/ \: l) ?" k
DBA
5 \# c( ?2 H2 M* C+ x</MasterValue> $ | U' J( R& f! }. h8 U. ^
<LocalizedValue> 6 h# r; X, `( U& k
DBA ) R# s& ~" _: v/ ~
</LocalizedValue> , H/ E _ E! U! J$ c
</Value> 0 N0 j; H8 {, c3 @% e2 p* r
</Property> 9 @$ l" I$ N* L0 ]' [% B2 h2 Z
</ObjectInstance>
1 T' p+ f" o0 H$ S; i7 T<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB">
+ P' o/ t$ R1 C+ B6 G' ]+ _<Property propertyName="role_name" masterLocale="en_US">
, Z5 I9 [$ B. o6 y9 R4 @2 P2 t<Value index="0"> / r: g) y$ W+ M* q
<MasterValue> 1 N! k/ m0 W" g
Tester 9 O4 y- u$ T/ V* Q
</MasterValue> 0 B/ g7 t! ]: S' B# y- R
<LocalizedValue>
7 m! G! d0 s5 j" q2 c5 e# F( E' W( [ w s
测试员
# \. { t9 f( [2 f3 i+ N' ? d4 H% J0 z& x. ]) k7 D: H- d3 c& z5 Y
1 Z7 V o% r2 N; M* |3 ?5 Z. G2 ?1 a" x
</LocalizedValue> " T, f+ y( a* U7 S& K8 U* [
</Value>
" S$ E) P8 n) ]! `</Property> ( A( i7 l. {* X3 m
</ObjectInstance>
/ f1 |, t0 d7 L$ [8 Q3 Y# B/ a' G% \5 j) B* P) C3 f
$ c2 e- ^, [+ r
! T5 Z. b- h0 n1 K" t. c- n6 X1 R! _* [8 A; _3 q7 I
( s3 h1 T9 B% H
: T i0 p$ L. K5 H: E0 x& @
8 _5 g7 |0 K3 c& n& h2 z' Q1 W保存文件.
. {6 W2 e2 G2 F3 B! R( F" ?. K, I [/ X% b: G' X. [0 S9 z+ e& F- N
5.导入本地化
4 c1 Q3 B& k# C4 J \3 x! Y$ d, e2 y6 N" h% U) _) ~1 s' `' M
在 TCDOS窗口中进行导入
; J2 c" p/ K$ f, x9 ~2 D' F
# s, w3 J9 ~6 ~) g0 u1 K/ A, Q5 G
请把正确的infodba密码提供给-p参数。6 A" r' A& m, R1 `: [9 O
6检查 3 p# ~$ _4 Q" A) N; L( W% F
. A. o- m; R" u用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
8 `2 B+ b" w D% _; U
( }! L m7 b" z6 G* M" b! n
2 F# Y, p2 l- z" A C
& B& X. V x9 j' g$ Q8 y
1 d% ~1 O9 w7 X0 g. g( J$ n) ~3 u4 G |