请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
123.怎样批量进行组织结构的本地化?
/ Y1 {6 f8 Y+ Q$ j! S0 L% R
. C" Q1 a2 p) @' k8 X( ]4 Y问题:
+ b' J/ h7 L4 F; j3 y6 ~5 b5 g" z通常情况下,为了更好地实现国际化,我们在定义组织结构的时候是用英文来定义的,例 如:组和角色的名称。很多本地的使用人员,还是希望看到本地化后的组织结构。系统管) ]1 \& Z! K( h% B& s
" I7 [; B7 B) @' w理员可以通过在胖客户端的组织应用程序去进行相关的本地化操作。这样工作量有点大,
) M4 J b* W+ u* h E( l9 T并且在测试系统里面的数据不容易移植到生产环境。是否有批量进行本地化的方法? ' X3 h9 }1 g4 A, _! X
软、硬件环境: ! x, `( o. _. h" m* f; s4 @
平台 : na
* e7 B6 L& f. { A- ^6 g, k! @7 h
OS : n/a 7 |, c- J0 w$ V2 h/ V
OS版本: n/a 7 Y& r3 U; u2 |) v4 W
8 [, A; |# f" f应用: 组织 : t2 ?+ |4 L0 Q! F: k! P; j4 H
版本: V10.1.0及以上 * y. ^" R) \, G9 _9 Q
3 z" s) ^' p7 J" f4 g0 h, t解决方法:
0 r' O! O; D4 e& p以下面在英文为主语言的环境下创建的组、角色为例,进行批量简体中文本地化的过程,
4 o* E; G% F/ j4 M3 f其它语言类似。
5 L, j/ N" \. a& U7 u' ?3 b- \% y
5 t4 k0 |7 Q6 D1 y% X* Z# N' U1.使用下面的语句创建一些组织结构,组和角色 " C* f( s* E1 T7 M, A
请把正确的infodba密码提供给-p参数。
5 b" e; |6 @+ Y+ C# Z7 |
+ l$ V1 b }# ~9 \8 u! W! amake_user -u=infodba -p=1234567890 -g=dba -group=BC01.GF01 ' R3 }7 p) f3 c9 X2 O
make_user -u=infodba -p=1234567890 -g=dba -group=BC02.GF01
! J1 }7 i5 p1 _) K9 K" `9 Vmake_user -u=infodba -p=1234567890 -g=dba -group=BC03.GF01 ! m/ c6 j$ U$ A l7 B$ ?
make_user -u=infodba -p=1234567890 -g=dba -group=BF01.GF02
/ {0 P7 L, ^0 R! R$ ^make_user -u=infodba -p=1234567890 -g=dba -group=BF02.GF02
% _3 {, j+ d8 O# K4 f$ z5 U; Emake_user -u=infodba -p=1234567890 -g=dba -group=BF03.GF02
6 K h# ?- s0 G' |5 Tmake_user -u=infodba -p=1234567890 -g=dba -role=Tester
* w( q9 ]2 @" H9 t) f9 b xmake_user -u=infodba -p=1234567890 -g=dba -role=QAEng
/ x, b1 }6 t. R+ hmake_user -u=infodba -p=1234567890 -g=dba -role=ProdEng
. ]% s, ?3 ~ U% r/ V6 w! w2登录进入TC,查看组织结构7 \0 _: F7 F& m+ @: b
& F& O+ {# m1 \0 e- E
' C, X- W2 v; d. K
3. 在TCDOS窗口中使用下面的命令导出组和角色
6 t+ L# { R5 ^6 a% I% p$ ]- a
0 k( g) _4 @7 r- a导出的文件格式是XML文件。 - l" T2 W' g3 w
; B4 e$ }+ g" B* J
请把正确的infodba密码提供给-p参数。
. Z U1 s% g! @- W# r+ A T3 W " Q/ v) o% G* R& g) ?# P2 V
3 f! }/ A" `8 D# V. N. N4.本地化
9 V4 F0 Q4 \8 P) J! g- M
7 J& @) I6 e7 X. C复制一份文件后面加上zh_CN,例如groups_zh_CN.xml, roles_zh_CN.xml, , y" a, i6 b" @& s$ g. N
( O# V l% H: M& I
用文本编辑器打开,把第二行修改为<L10N locale="zh_CN">,其中zh_CN是需要进行
0 l" \1 S8 s, q6 C6 u2 A% Q' f& s6 |7 Y! j! }; k
本地化的目标语言代码。" k, W2 T1 K+ I( Z+ g" b/ ]
下面是目标语言的列表
9 R5 \& O% Z' h( [- C) A0 J ^* O, }( H; H
目标语言代码目标语言 ' |4 K6 o; h4 Q# Y
, k8 L6 r3 ~. t- |# M7 acs_CZ 捷克语 # ^ _3 O1 J$ N$ t r R$ ]. P
1 p4 O8 P+ p1 B, P9 h$ Dde_DE 德语 # ?2 |9 h3 z# ^ @. b4 s' p
$ O% c, ~" A/ T9 x3 X" N
en_US 英语
Z0 V# @. G8 ?( F5 z1 t" z4 ], A Q0 H
es_ES 西班牙语
" E0 ?4 `. e5 N* `: c$ d3 R1 E2 w1 a6 r/ w5 t$ M+ V
fr_FR 法语
+ j2 Q; s6 b- i2 c" \( Y8 [6 P! f7 Z. X" y, G1 n) N5 b* o
it_IT 意大利语 $ C& e5 Q$ Y$ J, ^' E7 e; {
4 J2 h1 ~; q' Bja_JP 日语
/ Q# @1 Q( D2 n% s. r$ m8 X2 n& I
2 m3 k6 U' C% m( D9 b* u, \5 Yko_KR 韩语 ; w2 Z! }* i( C* A+ R1 B9 z* {
+ S' J2 ^0 \9 B3 {" F
pl_PL 波兰语
5 \6 q& ~+ v7 f/ W/ N6 H
5 }' Z5 G" L! j" K: ypt_BR 巴西葡萄牙语
. v1 t% s9 T9 k- G5 E" M" q
# \& @( z0 Z M# y+ t: q6 k+ Nru_RU 俄语 # F* Y5 P& M: N) I4 v) h
* K$ {- w% l, u( N5 M$ g8 Z
zh_CN 简体中文 1 j# M- g+ Q0 e: I/ t5 j% s$ O( o
( Q1 ?, O: t5 S( `7 a8 B$ V2 wzh_TW 繁体中文 ( x7 E( h! W, s/ S' K
8 H: T2 p# B5 L, m注: 1 m+ E$ E4 [% b8 Q$ n1 B( M' g
0 m% w+ T4 O. P2 |& |6 b) D8 i- O根据不同的本地化需要进行相关的第二行的修改,例如,繁体中文使用zh_TW本地化后 ! C4 K1 f1 {0 ]0 s( z* Y
* U8 y9 u# \6 `" e% R a: x
的对应名称在下面的属性对之间进行修改。 6 Z$ d5 j, V3 I; }
V: _/ g3 u% _; U+ |& a3 }
: h: ]( z4 Y7 U& g<LocalizedValue>
K1 x/ x) X/ k7 m6 H6 d' }* {4 o</LocalizedValue>
5 O3 `; e' l( p注:
$ l# D% ^: w% N! c6 |$ e' L9 F$ m# q9 E) s5 @3 s) }
如果是与原来一样的,也需要添加相关的属性,否则将会被显示为空。
: E0 J r% D# @" I! T* I" w6 `+ s- A) X: ?' ^5 S" ?* Z
对于不需要进行本地化的内容可以从XML文件里面删除,注意他们是包含在新的标签对
, t% E# A. u1 I' C! I
& b+ i; I5 X9 ?$ R- U% ?: A% D里面的:
8 B( G7 z$ F+ a0 A- J/ P6 V
; l$ O* t8 v2 ?! \8 E6 ^
' I$ ~$ ~+ U+ l8 K; Z3 q1 {# A<ObjectInstance> % f5 r5 Y, h# \9 n
</ObjectInstance>
5 S/ j5 |* K+ J% U8 l请注意保证XML格式的正确性。* J/ Z% T3 x2 [0 g
组的本地化修改的例子: 3 J5 F8 u9 k8 J5 d a/ j/ [1 Z
M" A! _; s1 ~# o. I8 {. V9 W* z
8 c9 x4 M# w2 T+ r* P' M
& W Q, F# U! _$ U; I
<ObjectInstance typeName="Group" displayName="dba" uidValue="AYdVPKfhouMCcB">
: z" o, F7 ~! q, S<Property propertyName="name" masterLocale="en_US"> ) M: @& A, O& i) r+ N' _5 @0 `* q* i
<Value index="0">
: W8 h, z7 s2 l) V<MasterValue>
( i$ g1 a$ k2 ]0 ~8 {% Sdba & G" Z2 K$ h! U
</MasterValue> / D( [$ o- f" a. W3 W. J
<LocalizedValue>
8 t& A1 |! j) I6 x7 N* ^dba 2 l. w1 ~6 F+ n. I
</LocalizedValue>
/ v; q/ B" b5 k/ O</Value>
0 ~, @0 u! W3 [: I</Property>
. S$ \2 `+ |* g$ S</ObjectInstance>
. R/ \7 J! w' {, s6 }& T4 c<ObjectInstance typeName="Group" displayName="GF02" uidValue="g0bhka8EouMCcB">
0 I: k; X8 |8 f+ G1 x3 n& b! j<Property propertyName="name" masterLocale="en_US"> 3 m/ \% p/ U) N7 s' I R
<Value index="0"> % K) |6 W# M7 p3 v1 _1 d7 t5 {
<MasterValue> ' J) ^7 k* w* S/ s
GF02
+ D) G( z5 g: n2 ~% y+ J4 u5 I</MasterValue> ! Q, {& ?- ?! `$ j) W) W
<LocalizedValue> G6 Z" Y8 l! D) h) J# H
" S% f7 y( P$ A5 {工艺02
9 y+ y1 x' \/ ~2 a+ G& o$ Y6 O% ^. ^1 a
+ A. Z6 a8 i9 q' u9 y3 B
</LocalizedValue> 5 K0 E% D4 R1 Z* ?" C8 W5 j4 ?
</Value> 9 Q; U9 V: O' @0 a! @( ]
</Property> 4 @4 x1 _7 p/ C; a
</ObjectInstance> 1 Z/ Z! a7 r- l1 t, Z% u! r4 a
- h5 p3 P# k3 p! m% i' b
角色的本地化修改的例子:
: s! O4 I a. S( f- m5 I/ o0 x
0 p; z" H/ @9 U( P& }0 p 8 W4 H+ s- x4 |9 w/ J5 }( d0 `
6 K k* l1 k! c3 R5 j
5 i @! G( C* O) o% A
2 {; [( k/ K, N, _) t. p<ObjectInstance typeName="Role" displayName="DBA" uidValue="AUeVPKfhouMCcB"> 3 e: x2 q! E. Q" n
<Property propertyName="role_name" masterLocale="en_US">
0 d& K- d. l$ f( H& B<Value index="0"> ' \1 j2 k1 o- C E
<MasterValue>
0 [/ d5 }0 V$ G5 {8 zDBA 3 {2 \. I# ]7 Z/ j
</MasterValue>
0 m! C$ F8 J6 F6 Z: V( A2 O% `1 x<LocalizedValue> 4 I# q0 B: k" F" y$ X; @9 y# q
DBA ' f& F, G. W2 ?9 l1 ~/ `# h
</LocalizedValue> : a$ R( w! y/ L& k% G _
</Value> $ z" j! \( ?' e/ _ q: ^, h
</Property>
: A+ L5 N' {; ?5 C2 i% g4 [</ObjectInstance> ( ]+ {9 _4 t3 j S9 _
<ObjectInstance typeName="Role" displayName="Tester" uidValue="g0bhka8YouMCcB"> 4 I6 z3 o9 M$ p! ~. g
<Property propertyName="role_name" masterLocale="en_US"> - q: c5 b- f9 d- p" ^5 ^& f
<Value index="0"> $ ]$ P5 O+ G) ~, f
<MasterValue> * D7 U6 G1 w2 F2 p1 Z
Tester 9 L4 T7 B7 u, y
</MasterValue>
2 l- x1 J, m. c" M3 y<LocalizedValue> 1 }4 Q0 ]8 A% r, y' v
3 T! ~% h* P2 B7 k# V测试员
B2 j( U& H8 b. Y3 T" s1 O i& `) Y
9 I/ ^, N% h( J6 R3 A3 U a x, w7 I8 C0 o
( w* Q6 p [0 l9 D) |
</LocalizedValue> 7 ?0 A+ h' \3 j* j# O2 t
</Value>
% J. o* j t. j: Z7 M</Property> 2 H' a- {2 N6 U$ Q, _$ V; _8 i
</ObjectInstance># I; y2 _7 a( S. e) t n$ V
( @+ k! o9 E3 }2 Y6 D* S, Q; J* q
; x. N" T* D8 S4 K: P: j4 t
2 J/ N" w& Y0 B7 \7 e
0 m1 _3 ]8 l$ }( I+ ?# n b( j
7 Q7 m) }4 E" b% o. N5 e8 E
* O- S2 a. N( r [9 {
8 \. s& ~; {% @, y保存文件. 0 t* X" [; z1 t& I: `* V
7 Y: @6 C0 l$ u+ B% E5.导入本地化
: E2 l& ]7 C# N2 S5 w M
9 P" F Z' e; w7 R% `( K' |% t在 TCDOS窗口中进行导入 - F8 H) Z& W/ |" f* b
6 g9 S# m6 y8 ^$ x# H, f- R+ _* ?3 e8 z8 u" l# I5 i/ T8 S( [
请把正确的infodba密码提供给-p参数。+ d M/ ]) T" ~3 L; T! u
6检查
$ g7 A5 [6 `' d6 V! w y+ S+ D1 w9 t* S
用对应的本地化语言界面登录,进行检查,同时还可以检查对应的英文名称
0 V* H$ g+ j- a9 ?& F2 q
5 ~4 i' n: l# o* f( W, q8 @7 b8 n
3 z# C i2 J- d x# M9 S' c8 e
8 L, T- Q: ]+ R( c8 i2 R+ ~
$ t% Z" A# L+ J4 b" d0 \: U |3 h |