请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
2 P6 v% b. ~3 E3 A1 D; W
& x( `1 I* k ~% z& W! \7 _问题:
' x5 F0 P5 q- S9 s) _通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管
& l' ?, h+ k1 o) C- x7 ]. t* `5 o; h0 @3 O/ H
理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大, % |) t- R* X3 f$ W- t" {# t
并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法?
$ J6 i: U1 |/ }软、硬件环境:
- v; B2 x0 Z+ }! c平台 : na 0 J/ V9 O! Z3 Q3 ?1 o
' X. P+ \ ]! s: u/ _. pOS : n/a 0 _- c" z* S) q3 h' b" a' b. C
OS版本: n/a
* ^( D4 ?# Z4 l2 s, Q6 ?5 v! f: J% o3 x" o3 x2 d$ v" v
应用: 组织 ' L+ `4 |# @ v* |
版本: V10.1.0及以上 & t1 `5 E; E$ k# D0 W! b ]
; x( Z, `, F9 j解决方法:
" {* \( X* V0 Y4 v- K以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
t9 G: b3 H$ V; s2 g其它语言类似。
! D7 t+ F8 g @6 ~% ^/ O* K/ G & [7 G/ N! ^0 j4 ^
1.使用下面的语句创建一些组织结构,组和角色 . P C; H9 d( z1 a9 C2 _+ ?
请把正确的infodba密码提供给-p参数。 - l) }( O& S4 {2 |% N7 q2 R9 ]
& o+ ^% n4 I0 ]0 g
make_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01
4 s' M- c6 H6 @. n4 nmake_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01 3 L& H6 f' P" [. r4 N" E
make_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 ! e" G4 S* O& r
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02
( F* q; Q+ f5 x" v2 v0 Tmake_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02 6 |7 s8 `0 k! q
make_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02 & R8 v! N6 x2 E4 r ]% Y
make_user -u=infodba -p=1234567890 -g=dba -role=Tester ( m$ p: v, o6 ?8 O) t. S7 |- {
make_user -u=infodba -p=1234567890 -g=dba -role=QAEng
9 u: w* T* X% D3 G% o. gmake_user -u=infodba -p=1234567890 -g=dba -role=ProdEng. z( Q2 @* G8 u; `5 [- L5 e7 y
2登录进入TC,查看组织结构& _% j8 G6 u7 [" U1 f
7 ]1 `* v, e- F4 x4 y6 P
; N# I7 }8 |$ x' B2 D" W
3. 在TCDOS窗口中使用下面的命令导出组和角色 i, c$ s( e8 K. c7 }0 |1 N
0 r. H/ Y& T. E; p9 C( v导出的文件格式是XML文件。
; @2 c# t( g; K
# M# k9 n; ^1 Y+ l请把正确的infodba密码提供给-p参数。
% n o$ D4 C3 ^/ |8 u' v% b7 @! u 7 }4 g& _$ _/ |: r; |+ c7 z
' E" M7 \3 Y8 H0 n8 u( n5 ?4.本地化
: c1 j; J) l4 |* P# {9 i) j
* \2 D) J# Z) Y7 Q3 Y! e4 F复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml,
0 k4 A& f7 o7 D' M. y) o% z- [$ H9 c) h+ t8 s5 v& L! w4 d
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
6 ?( Q3 e5 d {; q6 X$ B/ g+ p: w h2 k
本地化的目标语言代码。' B) _6 h: i5 Y: m* ^
下面是目标语言的列表
0 p6 y2 ?+ X- z; t( l- e
4 O$ i# S7 g3 `1 h' j目标语言代码目标语言
: x2 z# R7 K, Z9 v* o
! O) @' f3 }2 c& @3 gcs_CZ 捷克语
6 E E3 k( A2 U! T4 H; S6 p0 A4 T* q$ k
de_DE 德语 7 l; y- o; L4 p+ U
4 k' s! [1 R$ F' l' ~5 N/ Ien_US 英语
, ~. c1 B! }* ?% B0 h; ^
1 `, v1 G$ H; F0 m+ w7 {% r; u7 Aes_ES 西班牙语 4 l8 K: S$ a% `" ^7 R
# Z1 ]2 Z; H6 z8 Ifr_FR 法语 ( J+ W- j" s1 H) k
0 Y5 A0 ?! a6 Hit_IT 意大利语 + g* o0 C' p: Z# e
" E7 z$ u4 J* M3 t" B
ja_JP 日语
" e6 ~* Y l ?# G- z# p; d
/ X- P: N; M+ B0 wko_KR 韩语 ) I0 Y% D7 a$ j$ _+ d6 s7 u
4 B7 t0 P- h& q$ G0 ?4 z' ~$ ^# A8 P5 b
pl_PL 波兰语 % k) A) ~4 p9 ]7 D1 b5 g1 k
/ w; k0 p& ~. r- u( a1 Z5 mpt_BR 巴西葡萄牙语
; L4 @0 J- K0 U6 ~: | A) H# i1 L5 n8 G8 c. P! D
ru_RU 俄语
[2 \* E7 a% H7 h1 H& l5 s& q% ]$ k: E9 ?
zh_CN 简体中文 % w7 r- d! k3 c& e+ k
% s7 J3 R) T% f! |) `: v- |
zh_TW 繁体中文
8 L- s7 Q; }8 }* L( e) X4 r7 z( N& K% |
注:
. c1 }3 b4 a6 I* T6 D
: V0 d! h8 ^3 u- Y9 _根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后
; v: ]9 m: O6 Q8 J8 `' k+ z4 E( a$ m/ _
的对应名称在下面的属性对之间进行修改。 5 l( X& r6 L. I' z- u4 E8 l) y8 j
0 x" x4 Z5 b4 m# Z5 P$ ]$ d
9 L8 @+ C) ~4 F+ K: [
<LocalizedValue>
$ v% V' W/ c( _9 I+ r' Z</LocalizedValue> 4 o$ b! V9 B2 b9 J" i
注: 6 o0 F9 L3 y$ f2 Q5 Y" j( i: A
, g2 W5 V s0 G; |% v
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。 5 U+ Q2 C' U9 ^/ J( R" ^
/ f# i T3 O- f( o$ l$ M. j4 B! m
对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对 7 y( v7 b# |/ C) }% @
4 s6 p: R' a" ?% L
里面的:
# j' }' K6 ~& }+ S& ~7 i5 r
% A1 \( I5 Q* j6 d! W, c% l+ w r j5 c! A1 y
<ObjectInstance> 7 e- t$ [$ J# U; [3 t
</ObjectInstance> * o4 B; t- F. Y3 V% }) _( [1 l
请注意保证XML格式的正确性。
2 G* n) V, @7 |6 v组的本地化修改的例子:
1 T, Y/ ?& D5 j4 [, o% e
/ N& v* A) j/ H
, ?( N5 ?, ?" Q8 N
0 A! N2 Z- U" ?* r" W<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB"> ) K7 P' z2 l) D D; c. I: g6 h
<Property propertyName="name" masterLocale="en_US"> ; x6 Z# G) T; B1 {/ l+ I
<Value index="0"> 6 Y5 Z" m; K. o! F: K4 g$ p
<MasterValue> 1 b+ K$ Q s: ^( O! y
dba
2 i) O0 S8 \; \. i1 N/ F( \) d</MasterValue> 6 t) k& \9 Z, g _3 `; W9 g5 o. v7 W9 |
<LocalizedValue> 8 A* g6 u A* z! _7 Y S6 E
dba
8 u$ h2 Q0 Q6 S# A. S</LocalizedValue> 1 r l' y: T3 W, p6 a' r( {
</Value> ! i' d, J) w+ R! r5 |0 Y9 l& a0 l
</Property> $ _2 a" K: Z5 x
</ObjectInstance>
4 S G g/ y i4 ?, G5 u2 w5 f<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
; b- ]% e) I+ r1 l& A<Property propertyName="name" masterLocale="en_US"> & k. V0 y2 l8 _; y: J7 H6 S" l( C+ J, g
<Value index="0"> ( K3 O# }. J3 Z
<MasterValue> 8 Y) \& k! k7 {4 [
GF02 " z$ x9 G' P+ J G
</MasterValue> + R( H) J+ b3 T ^
<LocalizedValue> ; n X6 @' C, b) \4 {" U/ W$ c% o" M
3 d* u- L, ]3 H" p8 J& ~+ m
工艺02 , J0 [* Y4 @) z/ k$ `2 \
' q4 G) L' r) ^3 k3 n8 o/ A1 X F
+ {$ k7 o4 S/ b
</LocalizedValue>
! K s6 ~0 F6 |5 |. d- X8 j</Value> ! F( L# R( a. N6 @9 V
</Property> # S; d+ h4 N4 H
</ObjectInstance>
4 e& F- N$ {) k- p3 k U/ |' j% ?. G9 }0 Q8 u1 `1 X8 u! m
角色的本地化修改的例子: % P: y) M! n# U3 o. F
9 g5 L1 d, Z0 Z( B ' C9 X, M4 q- g. M v
# o6 u+ _" F0 D
' B+ z7 n6 D" g9 }
! G/ W5 E- U! z; G! G<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB">
: C1 e/ r$ O, s0 C( n b/ p<Property propertyName="role_name" masterLocale="en_US">
; x( r2 {- B$ c L T/ X<Value index="0">
! Q" R5 U4 q* L0 i<MasterValue> ) N& q5 F( k+ J; G
DBA
4 J. W+ J$ i/ c* x4 G</MasterValue> # o# I0 l9 y0 I
<LocalizedValue>
3 Z# e) i: l4 @0 O; {/ p- fDBA
/ i, Y4 V: O- w3 ^6 H4 b</LocalizedValue> j: g) q, @) H) I' z9 |, x
</Value>
9 r* C# j7 P/ J9 t7 `</Property>
( b3 q7 d) [8 l</ObjectInstance> 3 \% |9 i" I* _
<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB">
2 a: I, H5 d' {7 {+ ~. a6 ]<Property propertyName="role_name" masterLocale="en_US">
& ?7 R U5 {, y7 r' t, c8 M5 C<Value index="0">
* Z) k5 { X: w<MasterValue>
. l9 g3 U, d1 u5 Y* dTester - ~- A! o" ] I" H0 I! n
</MasterValue> " v( r& A: s: u/ S2 G
<LocalizedValue> 7 y; `8 g) @0 L
% r) X- a/ d- t测试员 " M5 a/ T5 Z0 o% z) A
* l; Z6 N2 ?" w; Y( _& Q. F! V5 M% R6 r# X$ m2 ?3 g* h
7 X4 \0 P* T9 W7 J, o ]/ ]: o</LocalizedValue> ; U0 B+ S! O& K* Y4 s( w( {
</Value>
9 |& O' a- c, o8 |: H9 m' l</Property>
" {! ~3 g) W7 O2 \3 G6 |</ObjectInstance>
, q- O* [+ @) C- t1 q7 Q' X+ Y7 H" P5 _0 S4 @3 `5 }
0 |# Y4 i4 H# L5 q& {
9 w; H; W+ D% p# r* b2 g s, C9 E
" \2 u/ |6 c0 l+ ~; C8 T1 m) ]$ c7 m
$ ~& ], v2 B/ C( L8 l
( P6 h5 `. g0 P保存文件.
( k' C+ w) J' U/ p; S" @" x5 m; E/ L- s' G+ [ L; |4 c
5.导入本地化 ; _, o. X$ a, z# n
# B7 f5 q' ?% H" Q* O' {, W' ]
在 TCDOS窗口中进行导入
* _9 t* U# o: g- l3 e' f 4 {% C @& d/ L! @( r' f9 H
& f" g8 X) h9 Q- w4 k8 [请把正确的infodba密码提供给-p参数。
! U0 j6 E" z1 r) `6检查 " T M6 }7 o' C+ J4 F
) O9 s8 e% q8 X, I9 d. k
用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
: C. J9 w: q, \
0 j( Z, J) J! ], `/ p- r2 B: c
) A2 }3 y. j: N* R% P5 y# x7 \3 x/ T
2 ^, z& w/ c- w, S% L* U
0 }4 o$ V- x. i- H* l# A |